【发布时间】:2020-03-24 21:56:56
【问题描述】:
一个 Model 类有一个外键 (models.ForeignKey) 引用另一个 Model 类。
Django 为这个外键生成了太多的 SQL 查询。当 admin.StackedInline 类使用 Model 类时,它会尝试创建一个包含引用表中所有项目的选择列表(ProductTemplate在下面的示例代码中)。
有没有办法限制外键只列出一个项目,而不是引用表中的所有项目?
任何其他建议也将受到高度赞赏。如果您需要更多详细信息,请告诉我。
In file admin.py:
...
class TransactionAttributeInlineAttribute(admin.StackedInline):
model = models.TransactionAttribute
verbose_name = 'Transaction Link'
verbose_name_plural = 'Product Links'
class MyAttributeAdmin(admin.ModelAdmin):
inlines = [TransactionAttributeInlineAttribute]
list_display = ['name','datatype','required']
...
In file models.py:
...
class TransactionAttribute(models.Model):
product_template = models.ForeignKey(ProductTemplate)
...
【问题讨论】: