首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Django admin ManyToMany内联"has no ForeignKey to“错误

Django admin ManyToMany内联"has no ForeignKey to“错误
EN

Stack Overflow用户
提问于 2011-06-26 03:23:24
回答 1查看 48.9K关注 0票数 110

我将Django管理员设置为以下模型:

代码语言:javascript
复制
class Quote(models.Model):                                                  
    author = models.CharField(max_length=100)                               
    quote = models.CharField(max_length=1000)                               
    tags = models.ManyToManyField('Tag')                                    

class Tag(models.Model):                                                    
    name = models.CharField(max_length=100)                                 

使用以下代码:

代码语言:javascript
复制
class TagInline(admin.TabularInline):                                                                                               
    model = Tag                                                             

class QuoteAdmin(admin.ModelAdmin):                                         
    list_display = ('author', 'quote')                                      
    inlines = (TagInline,)                                                  

class TagAdmin(admin.ModelAdmin):                                           
    pass                                                                    

admin.site.register(Quote, QuoteAdmin)                                      
admin.site.register(Tag, TagAdmin)

当尝试查看管理页面以添加Quote时,页面显示错误<class 'quotes.models.Tag'> has no ForeignKey to <class 'quotes.models.Quote'>。在我添加内联之前,这并没有发生。有什么问题吗?如何正确添加Tag作为内联?

(我花了整整20分钟寻找答案;我找到了类似的问题,但他们的答案都没有对我起作用。)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-06-26 03:40:50

Admin documentation有一个专门用于内联多对多关系的部分。您应该使用Quote.tags.through作为TagInline的模型,而不是Tag本身。

票数 183
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6479999

复制
相关文章

相似问题

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