【发布时间】:2020-01-12 22:57:40
【问题描述】:
我在 db (mysql) 中有 2 个表,在 2 个表之间没有通过键或 id 的经典关系。我可以定义关系的唯一方法是通过属性值。例如。表 wheel 和 car 和某些车轮仅因为尺寸而与某些汽车相匹配。是否可以在 DB 级别和/或 yii2 中定义,如果可以,如何定义?
在关系中,我可以添加一个 onCondition(),但你有也可以定义一个属性 (???):
public function getWheels() {
return $this->hasMany(\app\models\Wheel::className(), ['???' => '???'])->onCondition(['<', 'wheelsize', $this->wheelsize]);
}
我可以使用假属性并将其设置为所有记录,例如 1,但这对我来说似乎有点奇怪。
我在网上找不到任何关于此的内容,或者我只是在搜索错误的方式,或者我正在尝试一些完全不正确的做法。你能指出我正确的方向吗?
【问题讨论】: