2009-05-20 8 views
0

新しいビューと編集ビューの両方で使用できるように、部分的に分割されたフォームがあります。私はモデルで生成された静的配列から生成されるいくつかのドロップダウン(選択)を持っています。場所モデルで選択ボックスを編集用にレールに配置するのに問題がありますか?

def open_close_times 
@times = '','12:00 AM', '12:30 AM', '1:00 AM', '1:30 AM', '2:00 AM', '2:30 AM', '3:00 AM', '3:30 AM', 
     '4:00 AM', '4:30 AM', '5:00 AM', '5:30 AM', '6:00 AM', '6:30 AM', '7:00 AM', '7:30 AM', 
     '8:00 AM', '8:30 AM', '9:00 AM', '9:30 AM', '10:00 AM', '10:30 AM', '11:00 AM', '11:30 AM', 
     '12:00 PM', '12:30 PM', '1:00 PM', '1:30 PM', '2:00 PM', '2:30 PM', '3:00 PM', '3:30 PM', 
     '4:00 PM', '4:30 PM', '5:00 PM', '5:30 PM', '6:00 PM', '6:30 PM', '7:00 PM', '7:30 PM', 
     '8:00 PM', '8:30 PM', '9:00 PM', '9:30 PM', '10:00 PM', '10:30 PM', '11:00 PM', '11:30 PM' 

が終了

したがって、このように私のフォームの外観で選択:

<label for="hours_sunday_open">Open:</label><%= f.select(:hours_sunday_open, @location.open_close_times) %> 

と、私はそうのような部分を呼び出す:

<%= render :partial => "form", :locals =>{ :f => f} %> 

どうすればいいですか?編集コントローラから返された「選択された」情報をマークする選択?

答えて

0

Railsはコントローラから返されたアイテムと一致するアイテムを自動的に「選択済み」としてマークします。

編集コントローラが「1:00」を返した場合、選択リストにそのコントローラがある場合は選択されます。

+0

私の場合はそうではないようです...すべての選択は空白です...私はそれらをtext_fieldsに変更すると、正しい情報が表示されますか? –

+0

問題が見つかりました...私はDBの時間フィールドとしてデータを保存していましたが、AMでは、選択配列のPMは機能しません。 VARCHARが時間を格納するようにDBを変更すると、すべての選択項目が自動入力されるようになりました。 –

関連する問題