0
我正在创建一个模型,用户可以从购物车添加项目,创建附加到用户的订单。我想知道我是否以正确的方式开展这项工作。这似乎是一个相当常见的数据库设计。我是否需要与发票表的松散耦合,以存储问题列表,然后将订单连接到用户的发票号码?我是Django的新手,所以任何关于更好的建模系统的建议都会很感激。Django创建订单表单模型设计
这是我的模型到目前为止。哪种方法暂时有效,但是一旦添加购物车功能,它可能不会像需要的那样复杂。
REGION_CHOICES = (
('D', 'Domestic'),
('I', 'International')
)
class Source(models.Model):
source = models.CharField(max_length=100)
def __unicode__(self):
return self.source
class Role(models.Model):
role = models.CharField(max_length=100)
def __unicode__(self):
return self.role
class Subscriber(models.Model):
name = models.CharField(max_length=200)
address_line_one = models.CharField(max_length=200)
address_line_two = models.CharField(max_length=200, null=True, blank=True)
city = models.CharField(max_length=200)
state_province = models.CharField(max_length=2, null=True, blank=True)
zip = models.CharField(max_length=25)
#is_international = models.BooleanField(default=False, help_text="hello")
region = models.CharField(max_length=1, choices=REGION_CHOICES)
source = models.ForeignKey(Source)
role = models.ForeignKey(Role)
def __unicode__(self):
return self.name
class Issue(models.Model):
Volume = models.DecimalField(max_digits=3, decimal_places=1)
def __unicode__(self):
return unicode(self.Volume)
class Order(models.Model):
subscriber = models.ForeignKey(Subscriber)
issue = models.ForeignKey(Issue)
def __unicode__(self):
return unicode(self.subscriber)