繁体   English   中英

Django在管理页面中显示一对多关系

[英]Django displaying one to many relationship in the admin page

数据库示例:

class Brand(models.Model):
  brand_name = models.CharField(max_length=30


class Model(models.Model):
  brand = models.ForeignKey(Brand)
  model_name =  models.CharField(max_length=30)

现在在管理员

admin.site.register(Brand)

class ModelAdmin(admin.ModelAdmin):
  list_display = ['brand', 'model_name']
  fields = ['model_name', 'brand']
admin.site.register(Model, ModelAdmin)

如何在BrandAdmin页面中显示与一个品牌关联的所有模型? 就目前而言,“品牌”页面仅显示品牌,不显示与其相关的任何模型。

好吧,您最好的选择是Django内联

#admin.py    

class ModelAdmin(admin.ModelAdmin):
  list_display = ['brand', 'model_name']
  fields = ['model_name', 'brand']

class ModelInline(admin.TabularInline):
    model = Model

class BrandAdmin(admin.ModelAdmin):
    model = Brand
    inlines = [
        ModelInline,
    ]


admin.site.register(Brand, BrandAdmin)
admin.site.register(Model, ModelAdmin)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM