Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.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_Model - Fatal编程技术网

如何拥有一对一关系,但同时跟踪所有记录-Django关系

如何拥有一对一关系,但同时跟踪所有记录-Django关系,django,model,Django,Model,我在下面的模型中创建了PostingOrder。重新发布发布时,将创建一个新的PostingOrder。我希望每个帖子有一个当前的PostingOrder,但也希望能够跟踪每个帖子的所有PostingOrder 我目前的问题是,当我查询带有特定帖子的PostingOrder时,我会得到多个PostingOrder查询集。我可以通过过滤最近创建的邮件来获得当前的PostingOrder,但我觉得这不是一个好方法 如有任何建议,将不胜感激 class Posting(models.Model):

我在下面的模型中创建了PostingOrder。重新发布发布时,将创建一个新的
PostingOrder
。我希望每个帖子有一个当前的PostingOrder,但也希望能够跟踪每个帖子的所有PostingOrder

我目前的问题是,当我查询带有特定帖子的
PostingOrder
时,我会得到多个PostingOrder查询集。我可以通过过滤最近创建的邮件来获得当前的PostingOrder,但我觉得这不是一个好方法

如有任何建议,将不胜感激

class Posting(models.Model):
    title = ...
    author = ....

class PostingOrder(models.Model):
    posting = models.ForeignKey(Posting)
    order_date = models.DateTimeField(auto_now_add=True)
    payment_method = models.CharField(max_length=1, choices=PAYMENT_METHOD_CHOICES)
    amount = models.IntegerField()

因此,一次过账可以有多个过账订单?对最近创建的对象进行过滤确实是一种不错的做法,这样可以避免添加任何额外的表,并且可以轻松访问所有过账订单对象。@subha.py correct,当用户想要再次编辑和发布相同的帖子时,他们必须付款,因此会创建一个新订单,但发布是相同的。