在django中创建相同的模型
问题描述:
我正在使用django 1.10和mysql。 我愿意在我的数据库中有两个相同字段的表。在django中创建相同的模型
class Ticket(models.Model):
listing = models.ForeignKey(Listing)
ticketId = models.CharField(max_length=32)
dateOfPosting = models.DateTimeField()
seatNumber = models.PositiveIntegerField(null=True, blank=True)
class SoldTicket(models.Model):
### same fields here
这样做的最佳方法是什么?
答
在您的数据库中有两个相同的表格表明您不需要它们,布尔型字段或某个外键很可能会完成这项工作。
Hovewer,如果你真的想拥有两个相同的型号,你应该看看abstract models。
class AbstractBase(models.Model):
listing = models.ForeignKey(Listing)
ticketId = models.CharField(max_length=32)
...
class Meta:
abstract = True
class Model1(AbstractBase):
pass
class Model1(AbstractBase):
pass
那样,Model1和Model2将具有相同的字段。