2012-06-30 4 views
1

나는이 질문에 대한 답변을 얻기 위해 스택과 인터넷의 나머지 부분을 통과 해 왔으며 아무 것도 만들 수있는 "충분한"답변을 제공하는 것으로 보이지 않는다. 전진. 나는 웹 개발에 대한 완전한 초보자이므로 어떤 도움을 주시면 감사하겠습니다.모델의 이름을 가진 레일에 선택 상자 채우기

내 모델에는 각 사용자가 배정을 통해 많은 역할을하고 역할에 배정을 통해 많은 사용자가 있습니다.

새로운 과제를 만들 때 각 사용자의 성 + 첫 번째로 드롭 다운 상자가 필요합니다. 나는 이것에 관해 나를 인도하기 위해 인터넷 위에서 무엇이라도 발견 할 수 없다. 그러나 다시 나는 아마 재료를 검색하기 위해 바른 용어를 사용하지 않고있다. 모든 포인터는 매우 감사하게 될 것입니다!

<%=f.select :user_id, select("assignment", "user_id", 
    User.all.collect {|u| [ [u.name,u.surname].join(" "), u.id ] }, 
    { :include_blank => true }) %> 

하지만 반환 모든 빈 선택 박스입니다 :

은 내가 시도했습니다. 콘솔을 통해 수집 쿼리를 실행하여 작동하는지 확인하지만 어떤 이유로 선택 상자를 채우지 않습니다.

답변

0
select("assignment", "person_id", 
    Person.all.collect {|p| [ [p.first_name,p.last_name].join(" "), p.id ] }, 
    { :include_blank => true }) 

또는 모델의 FULL_NAME을 정의하고 사용

options_from_collection_for_select(@people, 'id', 'full_name')