ユーザガイド*1によると、validationで"requiredif"ではなく"validwhen"が推奨されるようだ。
使い方は簡単で、このように"=="で条件を書くことができる。
注意しなければならないのは、この条件を満たす時はチェックOKということで、決してNGの条件を書くわけではない。
"Aがnullではないならば、このフィールドもnullではない"ことのチェック
しばし悩んだのがこのエラー。
原因は、こういうことらしい。
- All comparisons must be enclosed in parens.
- Only two items may be joined with <code>and</code> or <code>or</code>
- If both items to be compared are convertable to ints, a numeric comparison is done, otherwise a string comparison is done.
<var-value>(((A == null) and (B == null) and (C == null)) or (*this* != null))</var-value>
という記述はまかりならんということか。
正しい記述。
<var-value>((((A == null) and (B == null)) and (C == null)) or (*this* != null))</var-value>
・・・メンドクサ!
댓글 없음:
댓글 쓰기