admin.py 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. from django.contrib import admin
  2. from music.models import Artist, Album, Track
  3. from scrobbles.admin import ScrobbleInline
  4. @admin.register(Album)
  5. class AlbumAdmin(admin.ModelAdmin):
  6. date_hierarchy = "created"
  7. list_display = (
  8. "name",
  9. "year",
  10. "primary_artist",
  11. "theaudiodb_genre",
  12. "theaudiodb_mood",
  13. "musicbrainz_id",
  14. )
  15. list_filter = (
  16. "theaudiodb_score",
  17. "theaudiodb_genre",
  18. )
  19. ordering = ("name",)
  20. filter_horizontal = [
  21. 'artists',
  22. ]
  23. @admin.register(Artist)
  24. class ArtistAdmin(admin.ModelAdmin):
  25. date_hierarchy = "created"
  26. list_display = ("name", "musicbrainz_id")
  27. ordering = ("name",)
  28. @admin.register(Track)
  29. class TrackAdmin(admin.ModelAdmin):
  30. date_hierarchy = "created"
  31. list_display = (
  32. "title",
  33. "album",
  34. "artist",
  35. "run_time",
  36. "musicbrainz_id",
  37. )
  38. list_filter = ("album", "artist")
  39. ordering = ("-created",)
  40. inlines = [
  41. ScrobbleInline,
  42. ]