刚刚完成了Django教程。开始我自己的项目。使用ManyToMany关系示例here。我在admin.py中添加了以下控件:
class ArticleInline(admin.TabularInline):
model = Article
extra = 3
class PublicationAdmin(admin.ModelAdmin):
inlines = [ArticleInline]
admin.site.register(Publication, PublicationAdmin)
但是当我尝试在管理页面中添加一个出版物时,它说:
<class 'polls.models.Article'> has no ForeignKey to <class 'polls.models.Publication'>
在创建出版物之前,是否必须初始化文章?创建出版物是否让Django寻找文章?
感谢您的帮助。刚开始。这是非常令人兴奋的,但非常令人兴奋。
答案 0 :(得分:1)
如果您正在使用多对多关系,则需要访问实际的直通模型。
我假设你有类似的东西:
class Publication(models.Model):
[...] # your other stuff
articles = models.ManyToManyField(Article)
假设构造,您使用拼写相似的属性访问through
模型:
class ArticleInline(admin.TabularInline):
model = Publication.articles.through
[...] # whatever else you need
希望有所帮助!