【问题标题】:Two Foreign keys issue django两个外键发出django
【发布时间】:2017-02-27 18:08:07
【问题描述】:

嗨,我有这个用于 django 的 python 代码,基本上我正在尝试构建它,以便每个 tourobject 可以有很多 tourbet,但我也希望能够将某个获胜的 tourbet 作为当前赌注保存,但是 django 抱怨它找不到 TourBet

 class TourObject(models.Model):
    tourplace = models.ForeignKey(TourPlace, related_name='tourplace', verbose_name="tourplace", default=1)
    title = models.CharField(max_length=155, blank=True)
    description = models.TextField(blank=True)
    date_created = models.DateTimeField(auto_now_add=True)
    status = models.BooleanField(default=False, verbose_name="Status")
    end_date = models.DateTimeField(blank=True, default=datetime.now)
    current_bet = models.IntegerField(blank=True, default=0)
    next_bet = models.IntegerField(blank=True, default=0)
    no_auction_price = models.IntegerField(blank=True, default=1)

    objects = models.Manager()

    def __unicode__(self):
        return self.title

    def get_absolute_url(self):
        return reverse("tourobjects:tourobject", kwargs={"pk": self.pk})

class RelatedTourObject(models.Manager):
    def get_queryset(self):
        return super(RelatedTourObject, self).get_queryset().select_related('tourobject').all()

class TourBet(models.Model):
    user = models.ForeignKey(User, related_name='tourbet', verbose_name='User')
    tourobject = models.ForeignKey(TourObject, related_name='tourobjectbet', verbose_name="tourobjectbet", default=1)
    date_created = models.DateTimeField(blank=True, default=datetime.now)
    bet_amount = models.IntegerField(blank=True, default=1)

    objects = models.Manager()
    related_tourobject = RelatedTourObject()

    def __unicode__(self):
        return str(self.bet_amount)

【问题讨论】:

    标签: django django-models foreign-keys


    【解决方案1】:

    我想你可以试试这个。

    class TourObject(models.Model):
        winning_bet = models.ForeignKey('TourBet', related_name='winning_bet')
    

    【讨论】:

    • 谢谢 Bipul,我在那里添加了它,并且还必须添加相关名称,因为它是冲突的。为此干杯
    • 太好了,更新了我的答案。必须投票或接受支持#SOreadytohelp。 :)
    猜你喜欢
    • 2011-12-04
    • 2019-07-30
    • 2015-12-21
    • 2014-03-20
    • 1970-01-01
    • 2019-08-17
    • 2021-11-30
    • 2015-12-14
    • 2018-09-01
    相关资源
    最近更新 更多