Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.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
Django 与额外字段的多对多关系-如何规避唯一性_Django_Django Models - Fatal编程技术网

Django 与额外字段的多对多关系-如何规避唯一性

Django 与额外字段的多对多关系-如何规避唯一性,django,django-models,Django,Django Models,我有以下任务。 有三个模型:项目、用户和采购订单。我希望能够为项目中的用户创建成员资格。用户可以是任意项目的成员。这可以用一个简单的方法来解决 曼尼托曼尼菲尔德 此外,成员资格应该引用PurchaseOrder,因为我希望将工作时间分配给特定的PurchaseOrder 我认为这可以通过为ManyToManyField使用一个,并为PurchaseOrder模型定义一个ForeignKey来解决。因此,对于每个成员,我都会提到一个采购订单 事实上,一个项目的成员资格将保持活动状态,而在将钱花在P

我有以下任务。 有三个模型:项目、用户和采购订单。我希望能够为项目中的用户创建成员资格。用户可以是任意项目的成员。这可以用一个简单的方法来解决 曼尼托曼尼菲尔德

此外,成员资格应该引用PurchaseOrder,因为我希望将工作时间分配给特定的PurchaseOrder

我认为这可以通过为ManyToManyField使用一个,并为PurchaseOrder模型定义一个ForeignKey来解决。因此,对于每个成员,我都会提到一个采购订单

事实上,一个项目的成员资格将保持活动状态,而在将钱花在PurchaseOrder上之后,必须为成员资格分配一个新的PurchaseOrder。只需将ForeignKey更新为新的PurchaseOrder,这也很容易

但现在我的问题是:

我希望保留旧的项目成员资格PurchaseOrder关系(成员资格表中的数据行,用于历史跟踪),将其设置为disabled并添加一个新的项目成员资格PurchaseOrder关系,该关系对用户和项目具有相同的ForeignKey,但与PurchaseOrder不同,并将标志设置为enabled


这是一种有效的方法吗?这种方法行得通吗?是否有可能绕过唯一性(或者从定义上讲,ManyToManyField没有唯一性),或者您对如何做到这一点有更好的想法吗?

当我通读这篇文章时,我不明白为什么还要为Member>PurchaseOrder的多对多关系操心

我会让它成为会员>采购订单的一对多关系和会员>项目的多对多关系,因为会员资格似乎是这一切的主要关键


这样,您就不必更新任何密钥。然后,我将创建第四个模型,它有一个多对多的关系来跟踪购买情况。添加成员资格原语。键和PurchaseOrder prim.key。

当我通读这篇文章时,我不明白为什么还要为Member>PurchaseOrder的多对多关系费心

我会让它成为会员>采购订单的一对多关系和会员>项目的多对多关系,因为会员资格似乎是这一切的主要关键


这样,您就不必更新任何密钥。然后,我将创建第四个模型,它有一个多对多的关系来跟踪购买情况。添加成员资格原语。key和PurchaseOrder prim.key。

如果您希望成员资格对象是“唯一的”,我并不真正理解这一点?我不希望成员资格对象是唯一的,我认为它们可能是唯一的。但我只是检查了一下,它们不是。这很好。我可能应该在问这个问题之前检查一下。如果你希望成员对象是“唯一的”,我不是很明白。我不希望成员对象是唯一的,我认为它们可能是唯一的。但我只是检查了一下,它们不是。这很好。在我问这个问题之前,我可能应该检查一下。如果你说的是会员,你指的是用户!?你是对的。这为我指明了正确的方向。谢谢。如果你说的是会员,你指的是用户!?你是对的。这为我指明了正确的方向。谢谢