色を持つことができる製品があるとしましょう。商品タイプによって、色フィールドが必要な場合と必要でない場合があります。
色が常に必要な場合は、製品モデルに次のものが必要です
public function rules()
{
return array(
array('colour', 'required')
);
}
ただし、これは製品タイプに応じて動的にしたいと考えています。
これはコントローラーで行う必要がありますか?コントローラーに次のようなものがあると思います:
public function actionOrder() {
// ....
if ($product->HasColour) {
// set the colour validation to be required
} else {
// set the colour validation to be not required
}
}
これにアプローチする最良の方法は何ですか?
ありがとう