Моя модель Orders
имеет поля rate
и total_amount
. Мне пришлось получить коэффициент из разных моделей, поэтому я создал unit_rate
.
Точно так же я хотел, чтобы мои поля total_amount
были умножением quantity
и unit_rate
, что я попытался сделать total_pay
.
Вот мой код:
class OrderAdmin(admin.ModelAdmin):
def unit_rate(self,obj):
self.rate = Product.objects.get(pk=obj.order_id)
return self.rate.price
def total_pay(self,obj):
self.rate = Product.objects.get(pk=obj.order_id)
self.total_amount = self.rate.price * obj.quantity
return self.total_amount
list_display = ('order_id', 'order_item', 'order_status', 'delivery_address', 'customer',
'quantity','unit_rate','total_pay')
readonly_fields = ('total_pay','unite_rate')
admin.site.register(Orders,OrderAdmin)
Поскольку total_pay
и unit_rate
получены из других столбцов, администратору не нужно их вводить. Вот почему я оставил их на readonly_fields
.
Проблема в том, что всякий раз, когда он создает заказ через интерфейс администратора, total_pay
и unit_rate
не отображаются в админке. Он просто показывает da sh вроде этого: -
.
Он делает это некоторое время, так что мне действительно нужна ваша помощь. Спасибо.