对不起,如果这令人困惑,我对Django仍然有点绿。所以基本上我有两个模型,我希望从一个选择中选择另一个模型的所有选择。所以基本上:
class Show(models.Model):
venue = models.CharField(max_length=100, choices = VENUE NAME)
class Venues(models.Model):
Name = models.CharField(max_length=100)
基本上我希望场地有一个输入该模型的场地名称列表。这可能吗?
答案 0 :(得分:0)
在您的情况下,您应该使用many-to-one ForeignKey
它可让您从Venues
对象访问Show
对象,只需将其添加到模型中即可。
class Show(models.Model):
venue = models.ForeignKey('Venues', on_delete=models.CASCADE)
class Venues(models.Model):
name = models.CharField(max_length=100)
要获得您的选择,您可以使用:
Venues.objects.all()
然后您唯一需要的是将对象或ID添加到Show
对象并保存。
选择也很好,但在这种情况下不是。例如,当你需要一些const并给用户这样的选择:
class Show(models.Model):
VENUES_CHOICES = (
(RESTAURANT, 'restaurant'),
(PUB, 'pub'),
)
venues = models.IntegerField(choices=VENUES_CHOICES, default=RESTAURANT)
我认为在订单状态下使用它非常棒。
答案 1 :(得分:0)
在 Venues 模型中添加这样的 str def 就可以了
def __str__ (self):
return self.name