这是我的登录页面:
<%= form_for Spree::User.new, :as => :spree_user, :url => spree.spree_user_session_path do |f| %>
<%= f.email_field :email %>
<%= f.password_field :password %>
<%= f.submit Spree.t(:login) %></p>
<% end %>
在控制器部分创建了user_sessions_controller_decorator.rb文件。
Spree::UserSessionsController.class_eval do
def create
@user = Spree::User.new
@user.email = params['spree_user']['email']
@user.password = params['spree_user']['password']
authenticate_spree_user(@user)
if spree_user_signed_in?
# sign_in(:spree_user, @user)
redirect_to dashboards_profile_path
else
redirect_to user_signin_path
end
end
end
它抛出错误,给出错误: NoMethodError (未定义的方法`authenticate_spree_user‘for #):
我不确定如何覆盖狂欢登录功能&如何在登录过程中对用户进行身份验证。
发布于 2014-03-03 14:57:11
您尝试使用的方法是authenticate_spree_user!
。
我建议您在spree_auth_devise source code中签入user_sessions_controller
https://stackoverflow.com/questions/22124357
复制相似问题