0

こんにちは、Ruby on Rails は初めてです。私は小さなアプリケーションを開発しています。アプリケーションにログインしようとすると、エラーActionView::Template::Error (undefined method `login' for {}:Hash) が表示されます:

サインイン用の私のフォームは次のようになります

<%= form_for("user", :url => user_session_path, :html => { :id => "signinForm", :class => "regForms round", :style => "padding:0px 20px 20px;" }) do |f| %>
            <div class="signinupformDiv">
                <%= f.text_field :login, :class => "signupin-field-uname signupin-field last", :placeholder => "" %> // error occurred for this line as undefined method log in
                <%= f.label :login, :class => "signupin-label" %>
            </div>
            <div class="signinupformDiv">
                <%= f.password_field :password, :class => "signupin-field-pwd signupin-field last", :placeholder => "" %> //Error occurred at this line as undefined method password..    
                <%= f.label :password, :class => "signupin-label" %>
            </div>
            <div class="signupin-bl" style="width:240px;margin:0px auto 10px;"><span id="signinbutton-span" style="min-width:81px;text-align:center; margin-right:20px;"><%= f.submit 'Sign In', :id => "signInButton", :class => "regFormButton" %></span><%= link_to "Forgot your password?", new_password_path('user') %></div>
<% end %>

このエラーを処理する方法はありますか。私が何か間違ったことをしているかどうか?

助けが必要です...ありがとう....

4

1 に答える 1

0

コントローラで。を確認してください@user。正しい値を設定しているはずです。空のハッシュ({})に設定されているようです。そのため、このエラーが発生します。

どのように設定したかはわかりませんが、代わりに次のようなことを行うことができます。

@user = User.new
于 2012-10-15T12:29:14.160 に答える