Database 计费系统数据库的设计
我正在尝试设计一个django应用程序,它将帮助我管理我的litte商店。我希望能够以一种比现在更简单的方式制作账单,但我需要一些数据库设计方面的帮助 现在我是这样想的:Database 计费系统数据库的设计,database,django,database-design,django-models,Database,Django,Database Design,Django Models,我正在尝试设计一个django应用程序,它将帮助我管理我的litte商店。我希望能够以一种比现在更简单的方式制作账单,但我需要一些数据库设计方面的帮助 现在我是这样想的: class Product(models.Model): name = models.CharField(max_length=200) price = models.IntegerField() class Article(models.Model): product = models.ForeignKey(P
class Product(models.Model):
name = models.CharField(max_length=200)
price = models.IntegerField()
class Article(models.Model):
product = models.ForeignKey(Producto)
qty = models.IntegerField()
id = models.AutoField(primary_key=True)
class Order(models.Model):
number = models.CharField(max_length=20, primary_key=True)
client = models.ForeignKey(Client)
invent = models.ForeignKey(Invent)
articles = models.ManyToManyField(Article)
我怀疑产品文章设计是否做得很好,应该有不同的方法来做,因为我的数据库中会有很多重复的数据
另一个问题是,如果该物品是订单“拥有”的,或者该物品是订单“归属”的,我不知道问题是否清楚
编辑1:
我对产品文章的思考:
+------------------+ +----------------+ +------------------+
| Product | | Product | | Article |
|------------------| |----------------| |------------------|
| | | | | |
| Name | | Name <--------+ Product |
| | VS | | | |
| Price | | | | |
| | | Price | | Qty |
| Qty | | | | |
+------------------+ +----------------+ +------------------+
+------------------+ +----------------+ +------------------+
|产品| |产品| |物品|
|------------------| |----------------| |------------------|
| | | | | |
|姓名| |姓名+-------------+VS | | ||
|| | | | |客户|+订单|
| ... | | | | | | |
| | | | | ... | +--------------+
|文章+++|||
+------------------++----------------+可能是这样的:
class Product(models.Model):
name = models.CharField(max_length=200)
current_price = models.IntegerField()
class Order(models.Model):
number = models.CharField(max_length=20, primary_key=True)
client = models.ForeignKey(Client)
invent = models.ForeignKey(Invent)
total = models.IntegerField()
class Article(models.Model):
product = models.ForeignKey(Product)
order = models.ForeignKey(Order)
qty = models.IntegerField()
price = models.IntegerField()
还请检查以下内容:可能类似以下内容:
class Product(models.Model):
name = models.CharField(max_length=200)
current_price = models.IntegerField()
class Order(models.Model):
number = models.CharField(max_length=20, primary_key=True)
client = models.ForeignKey(Client)
invent = models.ForeignKey(Invent)
total = models.IntegerField()
class Article(models.Model):
product = models.ForeignKey(Product)
order = models.ForeignKey(Order)
qty = models.IntegerField()
price = models.IntegerField()
还请检查:您能否详细说明“我怀疑产品文章设计是否做得很好,应该有不同的方法来做,因为我的数据库中会有许多重复数据”?很难确定您在这里问什么;试着用这样的方式来表达你的问题,在你的问题的标题中可以用15个单词或更少的单词来表达。你的问题需要更具体。我添加了一些绘图,试图更好地解释它。这是正确的吗?你有一个产品(例如“林多糖果”)和一篇文章(这是一个不同包装的产品)。客户购买物品,然后按顺序保存。如果是这样的话,价格应该在物品对象中。+1只是为了好看的ascii艺术品,你能否详细说明“我怀疑产品物品设计做得很好,应该有不同的方法来做,因为我的DB中会有很多重复的数据”?很难确定你在这里问什么;试着用这样的方式来表达你的问题,在你的问题的标题中可以用15个单词或更少的单词来表达。你的问题需要更具体。我添加了一些绘图,试图更好地解释它。这是正确的吗?你有一个产品(例如“林多糖果”)和一篇文章(这是一个不同包装的产品)。客户购买物品,然后按顺序保存。如果是这样的话,价格应该在物品对象中。+1只是为了好看的ascii艺术品是的,我正在尝试讨论哪种代码更好,你有还是我的。谢谢,我正在讨论哪种代码更好,是你的还是我的。谢谢