4

AJAX 呼び出しを使用して JSON データを取得し、そこから HTML フォームを生成しているため、取得する入力フィールドが事前にわかりません。その場で検証ルールを定義することは可能ですか? おそらくActiveAttrを使用して疑似モデルを定義しますが、データを受け取ったら検証を押し込みたいと思います。

それで...何かアイデアはありますか?

4

2 に答える 2

1

ClassName.class_eval %Q[validates :#{name}, length: {minimum: 5}]検証を動的に追加するために使用できます。もちろん、name変数にはセッターとゲッターを追加する必要があります。class_eval文字列を使用するため、無限の可能性があります。

于 2017-01-06T01:55:18.420 に答える
0

カスタム検証メソッドまたはクラスのいずれかとの組み合わせでActiveModelうまくいくはずです。クラスが宣言されたときのフィールドがわからないため、標準の検証宣言を使用することはできません(AFAIK)。

于 2012-07-14T12:26:20.477 に答える