2012-07-23 3 views
0

해시가 정의 된 모델에 클래스가 있습니다.선택 방법 레일에서 해시 사용에 대해 설명합니다.

{:"manager" => 1, :"staff" => 2}.freeze 

내 양식 부분입니다. 나는 show.html.erb에 submit 버튼을 누르면

<li class="field"> 
    <%= f.label :position_type %><br /> 
    <%= f.select :position_type, @person.position_types, {:include_blank => true} %> 
    </li> 

그래서, 내가 가지고 의도 인 경우에만 선택한 값의 값이 아닌 키를 볼 수 있었다.

Q :values이 아닌 key이 표시되도록 조정할 수있는 방법은 무엇입니까? 나는 그것이 hash보다는 select 태그와 많은 관련이 있다는 것을 알고있다.

추신 :

  1. 이미 array하고 내가 원하는 일을 사용했다. 새/edit.html.erb에서하여 show.html.erb에 keys하지만 보여 않습니다

  2. hash.invert 그리고있는이 방법은 암기 할 수없는 양식을 작성하려고 사용자로 훨씬 도움이되지 않습니다 keys => 값을 출력하여 키에 도착합니다.

나는 레일에서 select는 HTML을 namevalue attirb 소요 않는 방법에 대한 그냥 궁금입니다. 해시은 이미 각 key에 대해 value을 가지고 있기 때문에 양식을 제출할 때 레일스는 암시 적으로 key'svalue을 HTML value으로 가져옵니다.

답변

관련 문제