我已经为会话扩展了设计控制器。在用户登录时添加一些额外的功能。现在登录时,如果没有输入用户名或密码,我会收到错误:SessionsController#create
为 nil 调用 id,它会错误地为 4 - 如果你真的想要 nil 的 id,请使用 object_id
我上周搜索了长达 2 小时如何解决这个问题,有人可以帮我解决这个问题吗?将不胜感激
如何正确添加我的自定义功能但仍保留设计创建操作?
class SessionsController < Devise::SessionsController
def create
@user = User.where(:id => current_user.id).first
@moderated = Asset.where(:attachable_id => current_user.id, :moderated => true).first
if @user.sign_in_count.to_i == 1
def after_sign_in_path_for(resource)
"/welcome/basics"
end
else
if @moderated.nil?
unless @user.has_photo?
def after_sign_in_path_for(resource)
"/home/no_photo"
end
end
else
def after_sign_in_path_for(resource)
"/home/moderated"
end
end
end
end
end