多くのエントリーモデルがあるコンペティションモデルがあります。
[編集] スキーマは (大まかに) 次のようになります。
コンペ:
IDINT(11)
名前 VARCHAR(50)
日付DATETIME
エントリ:
IDINT(11)
競争_id INT(11)
ユーザー ID INT(11)
回答 VARCHAR(50)
isWinner INT(1)
私のpickWinner
見解では、関連するすべてのエントリをループするフォームがありisWinner
、ユーザーがエントリを勝者として選択できるようにするフィールドを提供しています。関連モデルなどの保存はかなり標準的であり、すべて正常に機能します。
Entry モデルの少なくとも 1 つが true に設定されるようにフォームを検証しようとしていisWinner
ます (ユーザーは少なくとも 1 つの勝者を選択する必要があります)。
エントリ モデルに検証ルールを適用することは明らかにできません。各モデルはそれ自体しか認識しておらず、他のモデルの値は認識していないためです。
1 つのエントリ モデルのみを勝者として設定する必要があります。コンペティションに検証ルールを追加して、その子エントリ モデルの 1 つがisWinner
true に設定されていることを検出できるようにするにはどうすればよいですか?