2012-01-13 2 views
1

드롭 다운이있는 Formtastic을 사용하여 폼을 설정하려고합니다. 내 루비 응용 프로그램은 다음과 같은 형식으로 잘 작동 :Formtastic semantic_form_for 정의되지 않은 메서드

<%= form_for @message do |f| %> 
    <%= f.error_messages %> 
    <%= f.hidden_field :parent_id %> 
    <p> 
    <%= f.label :content, "Add a Country to your carrier" %><br /> 
    <%= f.text_area :content, :rows => 8 %> 
    </p> 
    <p><%= link_to "Reply", new_message_path(:parent_id => @london_message) %></p> 
<% end %> 

나는 그것이 '정의되지 않은 메서드'오류를 던지고있다 form_forsemantic_form_for로 변경합니다. 아무도이 두 가지 방법과 왜 semantic_form_for가 작동하지 않습니다 사이에 다른 설명 할 수 있습니까?

+0

일반적으로 정의되지 않은 메서드의 대상이 무엇인지 나타 내기 때문에 오류 메시지와 관련된 상황이 좀 더 도움이 될 것입니다 ... – DGM

+0

"formtastic"이 Gemfile에 있으며 'bundle'을 실행했는지 확인할 수 있습니까? –

+0

@JesseWolgamott 내 Gemfile에 'formtastic'을 추가하고 '번들 설치'를 실행했지만 레일 서버를 다시 시작하지 않았습니다. 바보 같은 실수입니다.이 점을 지적 해 주셔서 감사합니다. –

답변

4

form_forsemantic_form_for은 두 개의 개별 폼 빌더입니다. 그것들은 많은 유사점을 가지고 있지만, Formtastic 버전은 많은 상용구를 반복하지 않도록 많은 단축형 방법을 사용할 수 있습니다.

semantic_form_for이 '정의되지 않은 메소드'를 던지는 경우 Formtastic이 올바르게로드되지 않은 것처럼 들립니다. Rails 콘솔에 들어가서 Formtastic을 입력하면 "Formtastic"이 반환됩니다. 대신에 "Uninitialized Constant"를 얻는다면 문제는 확실히 젬로드 프로세스의 어딘가에 있습니다.

+0

차이점을 설명해 주셔서 감사합니다. 레일 콘솔은 Formtastic이 설치되었지만 레일 서버를 다시 시작하지 않았 음을 보여주었습니다. 이제 semantic_from_for가 정상적으로 작동합니다. –

관련 문제