我在 Yii 中有四个模型。汽车、RaceCar、LuxuryCar 和 Driver。
RaceCar has_one 车手
LuxuryCar has_one Driver
RaceCar 和 LuxuryCar 都继承自同一个模型 - Car - 使用相同的表继承。
LuxuryCar 和 RaceCar 中都有一个“fuel_level”属性,它改变了 Driver 中的验证规则(如果 RaceCar.fuel_level 为零,Driver 应该不能将属性“action”设置为“driving”)。
而不是必须添加所有可能的“属于”与 Driver 的关系(我可能会添加更多继承的 Car 模型),然后检查 Driver 当前属于哪种 Car,这样我就可以从数据库中加载模型再次,我希望能够验证父级(例如 RaceCar)中 Driver 属性的值。
这可能吗?如果是这样,怎么做?如果没有,有没有更好的方法让我想念?