0
我想用Rails 4 &設計一個應用程序。Rails 4,Devise&Omniauth - 沒有方法錯誤
我想按照這個教程:
http://sourcey.com/rails-4-omniauth-using-devise-with-twitter-facebook-and-linkedin/
當我完成的步驟,並運行服務器,我得到這個錯誤
NoMethodError (undefined method `update' for nil:NilClass):
2015-12-14T20:37:03.180526+00:00 app[web.1]: app/controllers/users_controller.rb:43:in `finish_signup'
2015-12-14T20:37:03.180540+00:00 app[web.1]:
結束報名方法是:
def finish_signup
# authorize! :update, @user
if request.patch? && params[:user] #&& params[:user][:email]
if @user.update(user_params)
@user.skip_reconfirmation!
sign_in(@user, :bypass => true)
redirect_to @user, notice: 'Your profile was successfully updated.'
else
@show_errors = true
end
end
end
確定爲概率的具體行lem是:
if @user.update(user_params)
有沒有人看到發生了什麼問題?我不知道如何閱讀錯誤來理解它的抱怨。任何人都可以看到問題嗎?
你不初始化變量@user。 –
嗨,我真的很抱歉,但不知道你的意思,你的意思是我應該寫@current_user代替嗎? – Mel
你有'before_action:set_filter',就像例子嗎?你應該,否則沒有'@ user'實例變量集 –