【发布时间】:2015-09-16 06:49:52
【问题描述】:
我有一个表“InvoiceRows”属于“产品”(以及更多关联)。目标是拥有一个版本化的数据库,因此“InvoiceRows”有 2 个与“产品”相关的字段:InvoiceRows.product_id 和 InvoiceRows.product_revision。
我最初的想法是为“产品”设置 2 个表:Products(当前产品)和products_old(旧版本产品)。这是完美的工作:一旦产品发生变化,旧版本就会被复制到ProductsOld 并且字段Products.revision 会增加。
要进行最终关联,首先将在Products 上执行一个SELECT,如果它什么都不返回,则在ProductsOld 上执行相同的SELECT。
换句话说:
我想完成:InvoiceRowsbelongsTo Products(存在Products和ProductsOld):
- 查看
Products获取最新产品,因为它通常是必需的产品 - 如果找到,我们就准备好了。如果没有,请查看
ProductsOld以获取旧版本的产品。 - 如果找到了,我们就准备好了。
但是,我似乎无法在 xxxTable.php 文件中正确设置此关联。我想通过仅更改 InvoiceRows->belongsTo(...); 来完成此操作和产品->hasMany(...);功能配置。
这可能吗?
【问题讨论】:
标签: mysql cakephp associations