mirror of
https://gitlab.crans.org/mediatek/med.git
synced 2025-07-07 16:28:32 +02:00
Replace old models by new models to update DB structure
This commit is contained in:
@ -5,12 +5,14 @@
|
||||
from django.urls import reverse
|
||||
from django.utils.html import format_html
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from polymorphic.admin import PolymorphicChildModelAdmin, \
|
||||
PolymorphicParentModelAdmin
|
||||
from med.admin import admin_site
|
||||
from reversion.admin import VersionAdmin
|
||||
|
||||
from .forms import MediaAdminForm
|
||||
from .models import Author, CD, Comic, Emprunt, FutureMedium, Game, Manga,\
|
||||
Novel, Review, Vinyl
|
||||
from .models import Author, Borrowable, CD, Comic, Emprunt, FutureMedium, \
|
||||
Game, Manga, Novel, Review, Vinyl
|
||||
|
||||
|
||||
class AuthorAdmin(VersionAdmin):
|
||||
@ -18,7 +20,12 @@ class AuthorAdmin(VersionAdmin):
|
||||
search_fields = ('name',)
|
||||
|
||||
|
||||
class MediumAdmin(VersionAdmin):
|
||||
class BorrowableAdmin(PolymorphicParentModelAdmin):
|
||||
search_fields = ('title',)
|
||||
child_models = (CD, Comic, Manga, Novel, Review, Vinyl,)
|
||||
|
||||
|
||||
class MediumAdmin(VersionAdmin, PolymorphicChildModelAdmin):
|
||||
list_display = ('__str__', 'authors_list', 'side_identifier', 'isbn',
|
||||
'external_link')
|
||||
search_fields = ('title', 'authors__name', 'side_identifier', 'subtitle',
|
||||
@ -77,7 +84,7 @@ class FutureMediumAdmin(VersionAdmin):
|
||||
extra_context=extra_context)
|
||||
|
||||
|
||||
class CDAdmin(VersionAdmin):
|
||||
class CDAdmin(VersionAdmin, PolymorphicChildModelAdmin):
|
||||
list_display = ('title', 'authors_list', 'side_identifier',)
|
||||
search_fields = ('title', 'authors__name', 'side_identifier',)
|
||||
autocomplete_fields = ('authors',)
|
||||
@ -88,7 +95,7 @@ class CDAdmin(VersionAdmin):
|
||||
authors_list.short_description = _('authors')
|
||||
|
||||
|
||||
class VinylAdmin(VersionAdmin):
|
||||
class VinylAdmin(VersionAdmin, PolymorphicChildModelAdmin):
|
||||
list_display = ('title', 'authors_list', 'side_identifier', 'rpm',)
|
||||
search_fields = ('title', 'authors__name', 'side_identifier', 'rpm',)
|
||||
autocomplete_fields = ('authors',)
|
||||
@ -99,7 +106,7 @@ class VinylAdmin(VersionAdmin):
|
||||
authors_list.short_description = _('authors')
|
||||
|
||||
|
||||
class ReviewAdmin(VersionAdmin):
|
||||
class ReviewAdmin(VersionAdmin, PolymorphicChildModelAdmin):
|
||||
list_display = ('__str__', 'number', 'year', 'month', 'day', 'double',)
|
||||
search_fields = ('title', 'number', 'year',)
|
||||
|
||||
@ -140,14 +147,15 @@ class EmpruntAdmin(VersionAdmin):
|
||||
return super().add_view(request, form_url, extra_context)
|
||||
|
||||
|
||||
class GameAdmin(VersionAdmin):
|
||||
list_display = ('name', 'owner', 'duration', 'players_min',
|
||||
class GameAdmin(VersionAdmin, PolymorphicChildModelAdmin):
|
||||
list_display = ('title', 'owner', 'duration', 'players_min',
|
||||
'players_max', 'comment')
|
||||
search_fields = ('name', 'owner__username', 'duration', 'comment')
|
||||
autocomplete_fields = ('owner',)
|
||||
|
||||
|
||||
admin_site.register(Author, AuthorAdmin)
|
||||
admin_site.register(Borrowable, BorrowableAdmin)
|
||||
admin_site.register(Comic, MediumAdmin)
|
||||
admin_site.register(Manga, MediumAdmin)
|
||||
admin_site.register(Novel, MediumAdmin)
|
||||
|
Reference in New Issue
Block a user