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

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. from django.contrib import admin
  2. from oscar.services import import_module
  3. models = import_module('order.models', ['Order', 'OrderNote', 'CommunicationEvent', 'CommunicationEventType',
  4. 'BillingAddress', 'Batch', 'ShippingAddress', 'BatchLine',
  5. 'BatchLinePrice', 'ShippingEvent', 'ShippingEventType',
  6. 'PaymentEvent', 'PaymentEventType', 'BatchLineAttribute'])
  7. class OrderAdmin(admin.ModelAdmin):
  8. list_display = ('number', 'total_incl_tax', 'site', 'user', 'billing_address', 'date_placed')
  9. readonly_fields = ('number', 'total_incl_tax', 'total_excl_tax', 'shipping_incl_tax', 'shipping_excl_tax')
  10. class BatchAdmin(admin.ModelAdmin):
  11. list_display = ('order', 'partner', 'get_num_items')
  12. class BatchLineAdmin(admin.ModelAdmin):
  13. list_display = ('batch', 'product', 'quantity')
  14. class CommunicationEventTypeAdmin(admin.ModelAdmin):
  15. exclude = ('code',)
  16. class ShippingEventTypeAdmin(admin.ModelAdmin):
  17. exclude = ('code',)
  18. class PaymentEventTypeAdmin(admin.ModelAdmin):
  19. exclude = ('code',)
  20. class OrderNoteAdmin(admin.ModelAdmin):
  21. exclude = ('user',)
  22. def save_model(self, request, obj, form, change):
  23. if not change:
  24. obj.user = request.user
  25. obj.save()
  26. admin.site.register(models.Order, OrderAdmin)
  27. admin.site.register(models.Batch, BatchAdmin)
  28. admin.site.register(models.ShippingAddress)
  29. admin.site.register(models.BatchLine, BatchLineAdmin)
  30. admin.site.register(models.BatchLinePrice)
  31. admin.site.register(models.ShippingEvent)
  32. admin.site.register(models.ShippingEventType, ShippingEventTypeAdmin)
  33. admin.site.register(models.PaymentEvent)
  34. admin.site.register(models.PaymentEventType, PaymentEventTypeAdmin)
  35. admin.site.register(models.BatchLineAttribute)