2014-02-26 2 views
7

정의되지 않은 지역 변수 또는 메소드`F '# <에 대한 # : 0x000001080edfe0>Rails 4에서 부분 양식을 렌더링하는 방법은 무엇입니까?

내가 함께 템플릿 페이지 내에서 양식을 렌더링하기 위해 노력하고 있어요 : 파일이로드

<%= form_for @vehicle, html: { class: "f_grp" }, remote: true do |f| %> 
    <%= render "vehicles", locals: { f: f } %> 
<% end %> 

. 하지만 f 오류에 대한 정의되지 않은 메서드가 나타납니다. 어떤 아이디어?

답변

22

:partial을 사용할 때 :locals 만 사용하십시오. 이들의

중 하나는 올바른 :

<%= render partial: 'vehicles', locals: { f: f } %> 

또는 (레일 2.3 현재) :

<%= render 'vehicles', f: f %> 

을 결합 버전이, locals라는 지역을 생성하고 그 값을 설정합니다 해시는 f: FormBuilder...입니다.

locals:을 계속 사용하는 유일한 이유는 render :collection을 사용할 때입니다.

+0

예입니다. 'partial' 키워드를 사용하지 않고이 작업을 수행했다는 것을 알았습니다. 도와 주셔서 감사합니다! +1 – fyz

관련 문제