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.4KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. from django.contrib import admin
  2. from oscar.core.loading import import_module
  3. import_module('promotions.models', ['Promotion', 'PagePromotion', 'KeywordPromotion',
  4. 'MerchandisingBlock', 'PageMerchandisingBlock', 'KeywordMerchandisingBlock',
  5. 'MerchandisingBlockProduct'], locals())
  6. class PromotionAdmin(admin.ModelAdmin):
  7. pass
  8. class PagePromotionAdmin(admin.ModelAdmin):
  9. list_display = ['page_url', 'position', 'clicks']
  10. readonly_fields = ['clicks']
  11. class KeywordPromotionAdmin(admin.ModelAdmin):
  12. list_display = ['keyword', 'position', 'clicks']
  13. readonly_fields = ['clicks']
  14. class MerchandisingBlockProductline(admin.TabularInline):
  15. model = MerchandisingBlockProduct
  16. extra = 1
  17. class MerchandisingBlockAdmin(admin.ModelAdmin):
  18. list_display = ['title', 'type', 'num_products']
  19. inlines = (MerchandisingBlockProductline,)
  20. class PageMerchandisingBlockAdmin(admin.ModelAdmin):
  21. list_display = ['page_url', 'block', 'display_order']
  22. admin.site.register(Promotion, PromotionAdmin)
  23. admin.site.register(PagePromotion, PagePromotionAdmin)
  24. admin.site.register(KeywordPromotion, KeywordPromotionAdmin)
  25. admin.site.register(MerchandisingBlock, MerchandisingBlockAdmin)
  26. admin.site.register(PageMerchandisingBlock, PageMerchandisingBlockAdmin)
  27. admin.site.register(KeywordMerchandisingBlock)