GenericTabularInline没有在Django Admin中返回它应该的内容

时间:2017-05-02 15:37:45

标签: python django django-admin generic-foreign-key

我有以下removeBindings文件:

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

我无法让我的管理员使用我的Order对象显示OrderItem对象内联(可以有Product或ExtraService的键),然后是其quantity字段。相反,它表示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) 字段未知:

item_relation

如何绕过这个?

PS:我也尝试使用自己的ModelForm,但它仍然无法识别FieldError at /admin/product/order/13/ Unknown field(s) (item_relation) specified for OrderItem 字段。

PS1:如果我没有在item_relation中定义一个字段变量,我最终得到类似的东西,这是不正确的,因为我有现有的OrderItem对象,这假设我没有(没有选择对象,没有数量?):not what I need

0 个答案:

没有答案