我有以下models.py
文件:
class Product(Model):
...
class ExtraService(Model):
...
class Order(Model):
...
class OrderItem(Model):
order = models.ForeignKey(verbose_name=_('Order Item'), to=Order)
content_type = models.ForeignKey(ContentType, on_delete=models.CASCADE)
object_id = models.PositiveIntegerField()
item_relation = GenericForeignKey('content_type', 'object_id')
quantity = models.PositiveIntegerField(verbose_name=_('Quantity'), default=0)
我的admin.py
是这样工作的:
class OrderItemInlineAdmin(GenericTabularInline):
model = OrderItem
min_num = 0
extra = 0
fields = ('item_relation', 'quantity',)
ct_field = 'content_type'
ct_fk_field = 'object_id'
class OrderAdmin(admin.ModelAdmin):
list_display = ('user_form',)
inlines = (OrderItemInlineAdmin,)
admin.site.register(Order, OrderAdmin)
我无法让我的管理员用我的Order对象内联显示OrderItem对象(它可以有产品或外部服务的键),后跟其数量字段。相反,它表示item_relation
字段未知:
FieldError at /admin/product/order/13/
Unknown field(s) (item_relation) specified for OrderItem
我怎么绕过这个?你知道吗
PS:我也尝试过使用我自己的ModelForm,但是它仍然不能识别item_relation
字段。你知道吗
PS1:如果我没有在OrderItemInlineAdmin
中定义一个fields变量,我会得到这样的结果,这是不正确的,因为我有现有的OrderItem对象,而这假设我没有(没有选择对象,也没有数量?):
目前没有回答
相关问题 更多 >
编程相关推荐