mirror of
https://github.com/narrrl/holy-flavor-rater.git
synced 2026-11-04 00:47:02 +01:00
main image selections
This commit is contained in:
1 parent
caf3830d72
commit
466d0a0f9f
7 files changed
+153
-80
No files matched your search
+29
-1
@@ -1,3 +1,4 @@
|
||||
from django import forms
|
||||
from django.contrib import admin
|
||||
from django.contrib.auth.admin import UserAdmin
|
||||
|
||||
@@ -9,8 +10,35 @@ class CustomUserAdmin(UserAdmin):
|
||||
add_fieldsets = UserAdmin.add_fieldsets + ((None, {"fields": ("theme",)}),)
|
||||
|
||||
|
||||
class FlavorAdminForm(forms.ModelForm):
|
||||
class Meta:
|
||||
model = Flavor
|
||||
exclude: list[str] = []
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super().__init__(*args, **kwargs)
|
||||
instance = kwargs.get("instance")
|
||||
paths = list(instance.local_image_paths or []) if instance else []
|
||||
if paths:
|
||||
choices = [("", "— first available —")] + [(p, p.split("/")[-1]) for p in paths]
|
||||
self.fields["main_image_path"] = forms.ChoiceField(
|
||||
choices=choices,
|
||||
required=False,
|
||||
label="Main image",
|
||||
help_text="Pick which downloaded image is used as the primary.",
|
||||
)
|
||||
|
||||
|
||||
class FlavorAdmin(admin.ModelAdmin):
|
||||
form = FlavorAdminForm
|
||||
list_display = ("name", "category", "is_available", "is_legacy", "external_id")
|
||||
list_filter = ("category", "is_available", "is_legacy")
|
||||
search_fields = ("name",)
|
||||
readonly_fields = ("local_image_paths",)
|
||||
|
||||
|
||||
admin.site.register(User, CustomUserAdmin)
|
||||
admin.site.register(Category)
|
||||
admin.site.register(Flavor)
|
||||
admin.site.register(Flavor, FlavorAdmin)
|
||||
admin.site.register(Rating)
|
||||
admin.site.register(Banner)
|
||||
Reference in new issue
Block a user