我们正在构建一个核心购物车,我们公司将使用它作为我们将构建的多个购物车的基础。这些是高度专业化的,因此不同的产品类型将需要他们自己的数据表。
例如,对于销售标签的购物车......
产品 - id | type_id | created
标签 - id | product_id | x | y | z
我们正在努力解决如何构建对象的问题。我们希望以编程方式仅与 Label 类进行交互,并使数据“拆分”,以便在两个表之间进行说明。我们抛出的一个想法是创建一个视图来用于查询,然后只是覆盖对象的save()
方法,以实际与每个表的setter / save功能进行交互。
有没有人完成这项工作或者至少遇到过类似的挑战?
更新:当然这引出了一个问题......是否存在两个表可能具有相同列名的情况?如果是这样,如何处理它。
答案 0 :(得分:0)
您可以将名称/值对用于专用列。如果“name”部分与列名一致,则可以使用generalized setter / getter。
答案 1 :(得分:0)
产品是相关表,因此您可以通过关系与其进行交互,例如$labelModel->product
。所以你有每个表的模型,如yii所示。如果您将功能放在Label
,beforeSave()
和其他方法上,则只能与afterSave()
模型进行互动。