29 lines
1.1 KiB
Python
29 lines
1.1 KiB
Python
from django.contrib import admin
|
|
|
|
from .models import Dish
|
|
|
|
|
|
@admin.action(description='启用所选菜品(参与自动生成)')
|
|
def activate_dishes(modeladmin, request, queryset):
|
|
queryset.update(is_active=True)
|
|
|
|
|
|
@admin.action(description='停用所选菜品(不再参与自动生成)')
|
|
def deactivate_dishes(modeladmin, request, queryset):
|
|
queryset.update(is_active=False)
|
|
|
|
|
|
@admin.register(Dish)
|
|
class DishAdmin(admin.ModelAdmin):
|
|
list_display = ('name', 'cuisine', 'dish_type', 'ingredient_detail', 'protein', 'fat', 'calorie', 'is_active', 'created_at')
|
|
list_filter = ('dish_type', 'cuisine', 'is_active')
|
|
search_fields = ('name', 'ingredient_detail', 'cuisine')
|
|
list_editable = ('cuisine', 'dish_type', 'ingredient_detail', 'protein', 'fat', 'calorie', 'is_active')
|
|
list_per_page = 50
|
|
actions = [activate_dishes, deactivate_dishes]
|
|
fieldsets = (
|
|
(None, {'fields': ('name', 'dish_type', 'cuisine', 'is_active')}),
|
|
('营养信息', {'fields': ('ingredient_detail', 'protein', 'fat', 'calorie')}),
|
|
('其他', {'fields': ('description',), 'classes': ('collapse',)}),
|
|
)
|