2組の入力フィールドのうち、どちらか一方のみが必要です。私は検証の権利を得ることができません。Yii2検証時
listing_image_url
およびposter_image_url
は、$model->listingImage
がnullの場合にのみ必要です。
strlen($model->listingImage) == 0
も試しました。
[['listing_image_url', 'poster_image_url'], 'required',
'when' => function($model){
var_dump($model->listingImage); //result is empty string '0'
return $model->listingImage == NULL && $model->posterImage == NULL;
},'whenClient' => "function(attribute, value) {
return $('#vod-listingimage').val() == '' && $('#vod-posterimage').val() == '';
}", 'message' => 'look'
],
ちょうど上記と同じですが、逆です。
[['listingImage', 'posterImage'], 'required',
'when' => function($model) {
return $model->listing_image_url == NULL && $model->poster_image_url == NULL;
},
'whenClient' => "function(attribute, value) {
return $('#vod-listing_image_url').val() == '' && $('#vod-poster_image_url').val() == '';
}", 'message' => 'hi'
],
あなたは[真理値表](https://en.wikipedia.org/wiki/Truth_table)を使用して、おそらくあなたのルールを明確にもらえますか? 'poster_image'と' listing_image_url'を有効に設定していますか? – topher