You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

admin.py 1.3KB

1234567891011121314151617181920212223242526272829303132
  1. from django.contrib import admin
  2. from oscar.core.loading import import_module
  3. product_models = import_module('product.models', ['Item', 'ItemClass', 'AttributeType',
  4. 'ItemAttributeValue', 'Option', 'ProductRecommendation'])
  5. class AttributeInline(admin.TabularInline):
  6. model = product_models.ItemAttributeValue
  7. class ProductRecommendationInline(admin.TabularInline):
  8. model = product_models.ProductRecommendation
  9. fk_name = 'primary'
  10. class ItemClassAdmin(admin.ModelAdmin):
  11. prepopulated_fields = {"slug": ("name",)}
  12. class ItemAdmin(admin.ModelAdmin):
  13. list_display = ('get_title', 'upc', 'get_item_class', 'is_top_level', 'is_group', 'is_variant', 'attribute_summary', 'date_created')
  14. prepopulated_fields = {"slug": ("title",)}
  15. inlines = [AttributeInline, ProductRecommendationInline]
  16. class AttributeTypeAdmin(admin.ModelAdmin):
  17. prepopulated_fields = {"code": ("name",)}
  18. class OptionAdmin(admin.ModelAdmin):
  19. prepopulated_fields = {"code": ("name",)}
  20. admin.site.register(product_models.ItemClass, ItemClassAdmin)
  21. admin.site.register(product_models.Item, ItemAdmin)
  22. admin.site.register(product_models.AttributeType, AttributeTypeAdmin)
  23. admin.site.register(product_models.ItemAttributeValue)
  24. admin.site.register(product_models.Option, OptionAdmin)