admin.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. from django.contrib import admin
  2. from .models import Product, ProductType, ProductAttribute, AttributePossibleValue
  3. @admin.register(Product)
  4. class ProductAdmin(admin.ModelAdmin):
  5. list_display = ('item_id', 'product_name', 'product_type', 'image_path')
  6. search_fields = ('item_id', 'product_name', 'product_type')
  7. list_filter = ('product_type',)
  8. readonly_fields = ('image_path',)
  9. ordering = ('product_name',)
  10. @admin.register(ProductType)
  11. class ProductTypeAdmin(admin.ModelAdmin):
  12. list_display = ('name',)
  13. search_fields = ('name',)
  14. ordering = ('name',)
  15. class AttributePossibleValueInline(admin.TabularInline):
  16. model = AttributePossibleValue
  17. extra = 1
  18. @admin.register(ProductAttribute)
  19. class ProductAttributeAdmin(admin.ModelAdmin):
  20. list_display = ('name', 'product_type', 'is_mandatory')
  21. list_filter = ('product_type', 'is_mandatory')
  22. search_fields = ('name', 'product_type__name')
  23. inlines = [AttributePossibleValueInline]
  24. @admin.register(AttributePossibleValue)
  25. class AttributePossibleValueAdmin(admin.ModelAdmin):
  26. list_display = ('attribute', 'value')
  27. search_fields = ('attribute__name', 'value')
  28. list_filter = ('attribute__product_type',)