:
[ [key, value], [key, value], [key, value], ... ]
키은 옵션 값 및 값은 옵션 텍스트이다 : 컬렉션 파라미터 키/값 쌍의 어레이를 수용한다.
보기에서가 아니라 옵션 목록을 생성하려는 개체에 해당하는 모델에서이 배열을 생성하는 것이 가장 좋습니다.
best_in_place가 실행중인 것처럼 들리므로 선택 상자를 사용하여 best_in_place를 사용하여 특정 프로젝트에 대해 할당 된 사용자를 변경하려는 프로젝트보기 페이지의 간단한 예제가 있습니다. 메모리에서, best_in_place의 마스터 버전 값이 변경되었는지를 선택 상자를위한 AJAX 요청을 보내는
는
## CONTROLLER
# GET /projects/1
# GET /projects/1.xml
# GET /projects/1.json
def show
@project = Project.find(params[:id])
respond_to do |format|
format.html
format.xml { render :xml => @project.to_xml }
format.json { render :json => @project.as_json }
end
end
## MODELS
class User
has_many :projects
def self.list_user_options
User.select("id, name").map {|x| [x.id, x.name] }
end
end
class Project
belongs_to :user
end
## VIEW (e.g. show.html.erb)
## excerpt
<p>
<b>Assigned to:</b>
<%= best_in_place @project, :user_id, :type => :select, :collection => User::list_user_options %>
</p>
# note :user_id and not :user
참고.
명심해야 할 것도 있습니다. best_in_place는 기존 레코드를 "제자리에서"편집하기위한 것이지 새 레코드를 만드는 것이 아닙니다 (이 경우 새 페이지에 대해 _form 부분에 collection_select를 사용하십시오).
감사합니다. 이 작업이 가능합니다 ... OS X에서 크롬 스크롤 덕분에 예제의 마지막 부분에있는 코드를 놓치기 쉬워졌습니다. –
아마도 도움이된다면 대답으로 선택해야합니다. – marcamillion
이 답변을 주셔서 감사합니다. 한 가지 질문은 ... '선택'에서 '공백'옵션을 선택하는 방법은 무엇입니까? 즉 완전히 '공백'또는 '없음'또는 그와 유사한 것일 수 있습니다. – marcamillion