1

Ruby フォームヘルパーを使用して、

ユーザーが空のフィールドまたは選択されていない選択でフォームを送信しようとすると、「これに記入してください」のようなポップアップが表示されるようにします。

テキストフィールドを要求するには、これが機能します:

<%= f.text_field :name, :required => "required" %>

選択を要求するために、私はこれを試していますが、うまくいきません:

<%= f.collection_select :metric, Metric.all, :id, :name, :prompt => true, :required => "required" %> 

選択があり、そのオプションがドロップダウンに正しく入力されています。ただし、デフォルトの「選択してください」以外のオプションを選択せず​​に送信しようとすると、ポップアップが表示されるはずです。ポップアップは表示されません。

4

1 に答える 1

1

selectRuby のと組み合わせて Rubyのタグを使用する必要がありますoptions_from_collection_for_select。プロンプトを に設定するtrueか、カスタム プロンプトを追加できます。required中かっこで囲み、値を に設定する必要がありますtrue。例えば:

<%= select('trophy','metric', options_from_collection_for_select(Metric.find(:all), :id, :name),{:prompt => 'Select Metric'},{:required => true})%>

どこ:

-trophyインスタンス変数またはモデル オブジェクトの名前です。

- metricis はそのインスタンス変数の属性です。これは通常、データを表示しているテーブルのフィールド/列です。

-:idが鍵です

-:nameは結果です

于 2013-07-31T17:43:33.820 に答える