首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django ModelAdmin中的“ModelAdmin”可以显示实现表的其他字段吗?

Django ModelAdmin中的“ModelAdmin”可以显示实现表的其他字段吗?
EN

Stack Overflow用户
提问于 2020-02-25 19:23:02
回答 1查看 45关注 0票数 0

我无法让"list_display“从相关表中显示字段。

models.py

代码语言:javascript
复制
class product(models.Model):
    product_id = models.AutoField(primary_key=True)
    EAN = models.CharField(unique=True, editable=False, max_length=13)
    Product_name = models.CharField(max_length=50)

class price(models.Model):
    price_id = models.AutoField(primary_key=True)
    EAN = models.ForeignKey(product, to_field="EAN", on_delete=models.CASCADE)
    Vendor = models.ForeignKey(vendor, to_field="Vendor_name", on_delete=models.CASCADE)
    Qty = models.CharField(max_length=15)
    Price = models.DecimalField(max_digits=8, decimal_places=2, null=True)

    panels = [
        FieldPanel('EAN'),
        FieldPanel('Vendor'),
        FieldPanel('Qty'),
        FieldPanel('Price'),
    ]

hooks.py

代码语言:javascript
复制
class price_admin(ModelAdmin):
    model = pricelist
    menu_label = 'price'
    menu_icon = 'pilcrow'
    menu_order = 300
    add_to_settings_menu = False
    exclude_from_explorer = False
    list_display = ('EAN_id', 'Vendor_id', 'Price') # <-Here I have a problem
    list_filter = ('Vendor_id__Name',)
    search_fields = ('Vendor_id__Name', 'EAN_id__EAN')

我可以让"Vendor_id__Name""list_filter"list_display,中工作,但是当我将"Vendor_id__Name"放到list_display,中时,我会得到以下错误:

代码语言:javascript
复制
AttributeError: Unable to lookup 'EAN_id__Product_name' on price or price_admin

那么,从相关表中显示字段(在我的例子中是Vendor_id__Name)的正确方法是什么?任何帮助都将是非常感谢的!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-25 19:34:37

正如注意到的,您在相关的字段名中有一个错误。您可以使用的其他选项--方法字段或基本上--是列表显示确实接受的可调用的:

代码语言:javascript
复制
class price_admin(ModelAdmin):
    ...
    list_display = ('vendor_name', # other fields)

    def vendor_name(self, obj):
        return obj.EAN.Product_name
    vendor_name.short_description = 'Vendor name'
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60401818

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档