2012-02-23 4 views
1

레일에서 루비를 배우고 있습니다. 편집 가능한 사용자 계정을 만들고 싶습니다. 사용자 # 메소드에서 오류가 발생하지 않습니다.

나는 로컬 호스트에 오류가 있습니다

undefined method `model_name' for NilClass:Class 

이 내 edit.html.erb 파일입니다

<h1>Edit user</h1> 
<%= form_for(@user) do |f| %> 
    <%= render 'shared/error_messages', :object => f.object %> 
<div class="field"> 
    <%= f.label :name %><br /> 
    <%= f.text_field :name %> 
</div> 
<div class="field"> 
    <%= f.label :email %><br /> 
    <%= f.text_field :email %> 
</div> 
<div class="field"> 
    <%= f.label :password %><br /> 
    <%= f.password_field :password %> 
</div> 
<div class="field"> 
    <%= f.label :password_confirmation, "Confirmation" %><br /> 
    <%= f.password_field :password_confirmation %> 
</div> 
<div class="actions"> 
    <%= f.submit "Update" %> 
    </div> 
<% end %> 
<div> 
    <%= gravatar_for @user %> 
    <a href="http://gravatar.com/emails">change</a> 
</div> 

당신이 솔루션을 제공 할 수 있습니까?

답변

1

대부분 @user 객체는 nil이므로 @ user.model_name을 호출하려고하면 실패합니다. 컨트롤러 논리를 읽어 와서 유효한 @user를 찾았는지 확인해야합니다.

관련 문제