1

フォームにドロップダウン リストがあり、ユーザーがお気に入りのホット ドリンクを選択できるとします。

<%= form_for @person do |f| %>
<%= f.select :hot_drink, [['Tea', 'tea'], ['Coffee', 'Coffee']]
...

温かい飲み物が苦手なユーザーには NULL 値を入力できるようにしてほしい。このようなもの:

<%= f.select :hot_drink, [['Nothing Selected', NULL], ['Tea', 'tea'], ['Coffee', 'coffee']]

オプションについては知ってい:include_blankますが、NULL とは異なる空の文字列をデータベースに挿入するため、探しているものではありません。私のデータベースにはすでに多くの NULL 値があり、このフォームを使用して個人のレコードを挿入および編集しています。hot_drink の値を強制的に変更せずに Person の他のフィールドを編集できるように、NULL を認識するドロップダウン リストが必要です。

どうすればこれを実行できるか知っている人はいますか?

4

1 に答える 1

1

やってみました

<%= f.select :hot_drink, [['Nothing Selected', nil], ['Tea', 'tea'], ['Coffee', 'coffee']] %>

nilこのケースを処理するには、移行にデフォルト値を追加してみてください。

于 2013-06-26T11:43:46.370 に答える