我不知道我是否正确地思考这个问题,也许有人会让我直言不讳。如何将多个值存储在单个属性中
比方说,我有一个包含这样的models.py:
class Order(models.Model):
customer = models.foreignKey(Customer)
total = models.charField(max_length=10)
has_shipped = models.booleanField()
class Product(models.Model):
sku = models.charField(max_length=30)
price = models.charField(max_length=10)
现在,很明显的订单将包含产品,而不仅仅是一个产品。将产品添加到订单的最佳方式是什么?我能想到的唯一方法是在'Order'中添加另一个字段,称为'products',并为其中的每个产品填充一个带sku的CSV。这一点,显而易见的原因并不理想,但我现在还不是很擅长这种东西,也不知道更好的方法。
(请记住,这是伪代码,所以不介意拼写错误等)
这是多余的,因为订单本身已经作为“产品订单” – drozzy 2009-07-03 18:06:58
是的,但在答案中。 当我写这个答案时,我只是不记得类型models.ManyToManyField在Django所以提出了经典的解决方案。 – tdelev 2009-07-04 13:41:12