2 つのドロップダウン リストがあります。を含むアイテムと、それを含むアイテム(この場合は 2) をbmp_id
含むサブリストで、それぞれに一意の があります。メイン ドロップダウン リストのオプションの 1 つには、[3, 4, 5, 6] が付いた 5 つのサブリスト オプションが含まれます。ユーザーが[4、5、および6]のサブリストの選択肢の1つしか持てないようにしたいのですが、これは一意ではなく、他のものが追加されているかどうかに関係なく追加できます。フォームを送信すると、とが Bmp というテーブルに追加されます。bmp_id
bmpsublist_id
bmpsublist_id
bmpsublist_id
bmpsublist_id
bmp_id
bmpsublist_id
これは、モデルで使用している検証です。
validates_uniqueness_of :bmp_id, :message => "TODO", if: "bmpsublist_id == 4 || bmpsublist_id == 5 || bmpsublist_id == 6 || bmpsublist_id == 7"
この検証の問題は、最初に 3 のオプションを追加すると、4、5、および 6 のオプションを追加bmpsublist_id
できなくなり、3 のレコードが既に追加されていても追加できるようにしたいことです。追加されました。しかし、 が4、5、または 6 のものの 1 つを追加しても、私が変更したくない 3 のものを追加することができます。bmpsublist_id
bmpsublist_id
bmpsublist_id
何か案は?これが非常に紛らわしい場合は申し訳ありません。物事をうまく説明する方法が本当にわかりません。
アップデート:
私はそれを理解しました、答えは以下です