Django Admin,包括页面上的反向foreignkeyfields

时间:2018-01-06 11:28:48

标签: python django django-admin

我有以下两种模式:

class Seller(models.Model):
    name = models.Charfields(max_lenght=500)
    (... more fields, but no foreignkeys to anyone)

class Ad(models.Model):
    seller = models.Foreignkey(Seller, related_name='ads')
    (... more fields that are not relevant to this question )

现在,我想在Django管理员的年龄'广告'页面中包含卖家信息。我试着像这样管理内联:

class SellerInline(admin.TabularInline):
    model = Seller
    view_on_site = False


class AdAdmin(admin.ModelAdmin):
    list_display = ['item', 'title', 'seller', 'price']
    list_filter = ('item', 'item_state', 'transaction_type', )
    view_on_site = False
    raw_id_fields = ('seller', 'searches')
    search_fields = ['title', 'seller__username']

    inlines = [
        SellerInline,
    ]

但是这会引发以下错误:

<class 'scraper.admin.SellerInline'>: (admin.E202) 'scraper.Seller' has no ForeignKey to 'scraper.Ad'.

现在,一些谷歌搜索告诉我,反向关系不适用于内联管理员。我可以在模型上反转外键。但每个卖家可能有数百个广告(并且广告模型有大约20个字段),这将导致一个非常笨拙的卖家页面。

有没有人知道如何在管理员的广告页面上添加卖家字段,或者这真的不可能吗?

0 个答案:

没有答案