Yii には 4 つのモデルがあります。車、RaceCar、LuxuryCar、および Driver。
RaceCar has_one ドライバー
LuxuryCar has_one ドライバー
RaceCar と LuxuryCar はどちらも、同じテーブル継承を使用して同じモデル (Car) から継承します。
LuxuryCar と RaceCar の両方に "fuel_level" 属性があり、ドライバーの検証ルールを変更します (RaceCar.fuel_level がゼロの場合、ドライバーは属性 "action" を "driving" に設定できません)。
可能なすべての「所属」関係を Driver に追加するのではなく (継承された Car モデルをさらに追加する可能性があります)、Driver が現在どの種類の Car に属しているかを確認して、データベースからモデルをロードできるようにします。繰り返しますが、親 (RaceCar など) で Driver のプロパティの値を検証できるようにしたいと考えています。
これは可能ですか?もしそうなら、どのように?そうでない場合、私が見逃しているより良い方法はありますか?