Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 重复输入';1';用于测试Django的ForeignKey_Python_Django_Django Models_Model_Integration Testing - Fatal编程技术网

Python 重复输入';1';用于测试Django的ForeignKey

Python 重复输入';1';用于测试Django的ForeignKey,python,django,django-models,model,integration-testing,Python,Django,Django Models,Model,Integration Testing,我正在用Selenium为Django实现一个集成测试 我有一个这样的模型示例: 类产品(models.Model): id=models.AutoField(最大长度=11,主键=True) contract\u id=models.IntegerField(blank=True,null=True) name=models.CharField(max_length=255,blank=True,null=True) productType=models.OneToOneField( 产品类型

我正在用Selenium为Django实现一个集成测试

我有一个这样的模型示例:

类产品(models.Model):
id=models.AutoField(最大长度=11,主键=True)
contract\u id=models.IntegerField(blank=True,null=True)
name=models.CharField(max_length=255,blank=True,null=True)
productType=models.OneToOneField(
产品类型,
在_delete=models.CASCADE上,
db\u column='product\u type\u id'
)
productGroup=models.ForeignKey(
产品组,
在_delete=models.CASCADE上,
相关的_name=“ProductGroup”,
db\u column='product\u group\u id'
)
类元:
db_表=‘产品’
当我在产品中插入新字段时 我犯了这样的错误。问题是,当我第一次插入或创建新产品时,它仍然运行良好。但第二次,它引发了一个错误

“密钥“产品类型id”的重复条目“3”

我认为,因为表
PRODUCT\u TYPE
有一个约束
PRODUCT\u TYPE\u id
,但我插入的值是重复的。但是我可以修复foreignKey Constraint错误吗?

这是因为
OneToOneField
,第一次使用ProductType(比方说X)添加产品时,它可以正常工作。如果使用
ProductType
X添加新的
Product
,它将遇到重复(
OneToOneField
允许一个产品仅映射到1
ProductType

那么,我如何修复它,更改为
ForeignKey