- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
for item in data:
category_id = item['category_id']
del item['category_id']
category = Category.objects.get(pk=category_id)
code = item['code']
try:
article = Article.objects.get(pk=code)
except:
article = Article(**item)
article.save()
# at this point I have the article & category, but the next
# statement throws me an error:
category.articles.add(article)
category.save()
错误是:
AttributeError: 'ManyRelatedManager' object has no attribute 'add'
最佳答案
JamesO 是正确的 - 看起来您的 Category.articles 字段具有直通关系。假设您的模型至少类似于以下内容
class Article(models.Model):
name = models.CharField(max_length=128)
class Category(models.Model):
name = models.CharField(max_length=128)
articles = models.ManyToManyField(Article, through='Membership')
class Membership(models.Model):
article = models.ForeignKey(Article)
category = models.ForeignKey(Category)
author = models.CharField()
然后要将文章
添加到类别
,您必须
m = Membership(article=article, category=category, author="Dan TM")
m.save()
注意 - 我们无法判断 through
字段的名称,因此 Membership
是一个猜测,灵感来自 django docs
关于django - AttributeError : 'ManyRelatedManager' object has no attribute 'add' ? 我喜欢在 django 网站上但是得到了这个错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8095813/
我有两个模型: Rubric(models.Model): name = models.CharField() Magazine(models.Model): name = model
尝试这样做: wishList = WishList.objects.get(pk=20) matches = [val for val in Store.attribute_answers.all(
所以我试图显示一个表中没有出现在另一个表中的项目列表。但是我不断收到诸如“无法解压不可迭代的 ManyRelatedManager 对象”之类的错误 我已经尝试了 django 过滤器和排除的多种变体
我正在创建一个允许用户玩异步游戏的网站。我正在使用 Python 2.7.5 运行 Django 1.5,并使用 Django 的 native 用户身份验证 API。我没有创建自定义用户模型,而是将
我有 2 个不同的应用程序,没有特别的理由相互交谈。这意味着我不想在任何一个应用程序中导入任何一个名称。所有的工作都应该在胶水应用程序中。 我想编写一个胶水应用程序,通过 ManyToManyFiel
共有三种模型:House_Type、House_Option 和 Order House_Type 模型有 2 个字段:id 和 name House_Option 有 3 个字段:id、name 和
我无法解决名为 Many Related Manager is not iterable 的错误。我有名为 A 和 B 的模型,如下所示: class B(models.Model): in
在将一些项目添加到我的“国家”ManytomanyField 后,我在返回我的对象时遇到问题。我可以看到我的数据正在保存 class CompanyProfileManager(models.Ma
我的models.py 看起来像这样: class IP(models.Model): name = models.CharField(max_length=30, unique=True)
我显然是个笨蛋,我会在一开始就承认这一点。我正在使用以下工厂 class DataSheetFactory(factory.DjangoModelFactory): class Meta:
我有一个带有 ManyToManyFields 的简单模型,我正在序列化为 JSON: 模型.py: class Meeting(models.Model): site = models.Fo
我正在尝试访问 ManyToMany 链接的直通表上的字段,以通过 Django Rest Frameworks 序列化为 JSON。 我在多对多中涉及的模型有: class Mage(models.
for item in data: category_id = item['category_id'] del item['category_id'] category = C
我正在尝试对具有多对多字段的模型使用 ModelSerializer。 这是我模型的一部分: class BaseSearchService(models.Model): advertisements
我是一名优秀的程序员,十分优秀!