首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将数据插入到一个模型的字段中,该模型与另一个模型映射OnetoOneField

如何将数据插入到一个模型的字段中,该模型与另一个模型映射OnetoOneField
EN

Stack Overflow用户
提问于 2019-04-15 09:54:43
回答 1查看 40关注 0票数 0

这些是我的模型,其中eda_defect_id of eda_detail是一个一对一的字段,指的是defect_details模型。

代码语言:javascript
复制
class defect_details(models.Model):
    defect_id = models.CharField(primary_key=True,max_length=20)
    description = models.CharField(max_length=256)


class eda_detail(models.Model):
    eda_defect_id = models.OneToOneField('defects.defect_details',primary_key=True, on_delete=models.PROTECT)
    analysis_writeup = models.TextField(blank=True, null=True)

在我的代码中,我试图插入模型,但是得到了错误:

代码语言:javascript
复制
from defects.models import defect_details
from edainfo.models import eda_detail

defect_id = "Jira-SMSV-512"
description = "Hello There"
defect_obj = defect_details(defect_id=defect_id, description=description)
defect_obj.save()

eda_obj = eda_detail(eda_defect_id=defect_id)
eda_obj.save()

错误: ValueError:无法分配"'Jira-SMSV-512'":"eda_detail.eda_defect_id“必须是"defect_details”实例。

EN

回答 1

Stack Overflow用户

发布于 2019-04-15 10:01:26

您的eda_detail模型在defect_details模型上有OneToOne,所以在保存数据时,您只能将defect_details的实例而不是字符串传递给eda_detail,

所以你的代码应该是

代码语言:javascript
复制
eda_obj = eda_detail(eda_defect_id=defect_obj)

然后使用eda_obj.save()保存这个

关于django文档中的一个例子,姜戈OneToOne

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

https://stackoverflow.com/questions/55686613

复制
相关文章

相似问题

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