2009-05-20 3 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' 

그래서 이런 내 양식 모양의 선택 :

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

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

와 나는 부분과 같이 전화

어떻게해야합니까? et는 편집 컨트롤러에서 반환 된 "선택된"정보를 표시하도록 선택합니까?

답변

0

레일즈는 자동으로 컨트롤러에서 반환 된 항목과 일치하는 항목을 "선택됨"으로 표시합니다.

그래서 편집 컨트롤러가 "1:00"을 반환하면 선택 목록에 있으면 해당 컨트롤러가 선택됩니다.

+0

나에게 맞는 것 같지 않습니다 ... 모든 선택 사항이 비어 있습니다 ... 내가 text_fields로 변경하면 올바른 정보가 표시됩니까? –

+0

문제점을 찾았습니다 ... 데이터를 DB의 시간 필드로 저장했지만 AM, PM이 작동하지 않는 선택 배열에 저장했습니다. VARCHAR가 시간을 저장하도록 DB를 변경하면 모든 선택 항목이 자동 채워집니다. –

관련 문제