我正在使用 Python(3.7) 和 Django(2) 开发一个项目,其中我有多个使用该User模型的模型。我有一个演出模型,一个用户可以创建一个演出,另一个用户用户可以购买这个演出,所以我想建立一个模型来存储购买信息,我想在其中包含Gig Model和user谁创建了Gig作为seller和在user谁是购买者的演出作为buyer模型。我怎样才能创建这样的模型?这是我的Gig模型:class Gig(models.Model): CATEGORY_CHOICES = ( ('GD', 'Graphic & Design'), ('DM', 'Digital Marketing'), ('WT', 'Writing & Translation'), ('VA', 'Video & Animation'), ('MA', 'Music & Audio'), ('PT', 'Programming & Tech'), ('FL', 'Fun & Lifestyle'), ) title = models.CharField(max_length=500) category = models.CharField(max_length=255, choices=CATEGORY_CHOICES) description = models.CharField(max_length=1000) price = models.IntegerField(blank=False) photo = models.FileField(upload_to='gigs') status = models.BooleanField(default=True) user = models.ForeignKey(User, on_delete=models.CASCADE) created_at = models.DateTimeField(default=timezone.now) def __str__(self): return self.title在这里,我想要实现的目标是:class Order(models.Model): gig = models.ForeignKey(Gig, on_delete=models.CASCADE) seller = "I want to add the gig creator here" buyer = "I want to add thee gig buyer here"
2 回答
德玛西亚99
TA贡献1770条经验 获得超3个赞
你可以简单地做:
class Order(models.Model):
gig = models.ForeignKey(Gig, on_delete=models.CASCADE)
seller = models.ForeignKey(User, on_delete=models.CASCADE, related_name='sold_orders')
buyer = models.ForeignKey(User, on_delete=models.CASCADE, related_name='bought_orders')
PS 请注意,最好在 ForeightKey 字段上使用字符串模型表示,以避免可能的循环导入问题。喜欢:
gig = models.ForeignKey('Gig', on_delete=models.CASCADE)
添加回答
举报
0/150
提交
取消