python - Django 多对多字段

标签 python django

在我的模型中我有:

class Poll(models.Model):
    topic = models.CharField(max_length=200)
    tags = models.ManyToManyField(Tag)

我正在尝试创建 Poll 对象并像这样存储标签:

Tags = []
for splitTag in splitTags:
    tag = Tag(name = splitTag.lower())
    tag.save()
    Tags.append(tag)

如何设置 Tags 数组并将其分配给 tags

我试过:

    poll = Poll(topic=topic, tags = Tags)
    poll.save()

最佳答案

嗯,应该更像这样:

models.py

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

class Poll(models.Model):
    topic = models.CharField(max_length=200)
    tags = models.ManyToManyField(Tag)

in views.py:

poll = Poll(topic="My topic")
poll.save()
for splitTag in splitTags:
    tag = Tag(name = splitTag.lower())
    tag.save()
    poll.tags.add(tag)
poll.save()

关于python - Django 多对多字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4912223/

相关文章:

南姜 : changing field type in data migration

python - pandas:沿着 DataFrame 识别 "portions"

python - Google App Engine + 表单验证

python - 如何在 xlsxwriter 的图表中设置背景颜色

python - 无法使用 Pandas 分析在数字数据上分配位图错误

php - 用于 PHP 的类似 Django 的 URL 路由

django - 尽管我什么都没做,但 Postgres 有很多事件正在进行

mysql - 为什么 Django ORM 找不到明显在我的数据库中的项目?

python - 如何指定某些命令行参数在 Python 中是必需的?

python - 如何确定 "oscillating"轨迹的幅度和频率