Skip to main content
 首页 » 编程设计

python之'.....' 对象在 Django 中不可迭代

2025年05月04日43xxx_UU

我有 3 个模型:User、Choice、Card。每个用户将查看同一组 10 张卡片,然后决定每张卡片是否重要。

下面是我如何定义类及其关系

在 models.py 中:

class Choice(models.Model): 
    user = models.ForeignKey(User) 
    card = models.ManyToManyField(Card) 
    is_important = models.NullBooleanField() 
 
class Card(models.Model): 
    card_number = models.IntegerField(primary_key=True) 
    content = models.TextField(null=False) 

在 views.py 中

(我尝试保存用户对卡片的选择。)

def listings(request): 
   user = request.user 
   choice = Choice.objects.create(user=user, is_important = True) 
   choice.card= Card.objects.get(1) 

但是,我得到了这个错误

'Card' object is not iterable 

你能告诉我错误在哪里吗?

非常感谢!

请您参考如下方法:

您可以像这样针对多对多字段添加对象

card =  Card.objects.create(card_number=any_number, content='abc')    
choice.card.add(card)