Ruby on rails Rails-参数数目错误(:force=>true?)
我有一个before_过滤器,它通常会验证每个控制器;然而,我不使用它的某个控制器。但是,当我从那个控制器访问一个特定的操作时,出于某种原因,我会得到一个错误:Rails-错误的参数数:force=>true?用于身份验证。我在方法中添加了一个参数,以查看传递给该方法的内容,并将其视为参数{:force=>true}。这不会发生在任何其他控制器操作上 这是我的错误Ruby on rails Rails-参数数目错误(:force=>true?),ruby-on-rails,ruby,ruby-on-rails-3,devise,Ruby On Rails,Ruby,Ruby On Rails 3,Devise,我有一个before_过滤器,它通常会验证每个控制器;然而,我不使用它的某个控制器。但是,当我从那个控制器访问一个特定的操作时,出于某种原因,我会得到一个错误:Rails-错误的参数数:force=>true?用于身份验证。我在方法中添加了一个参数,以查看传递给该方法的内容,并将其视为参数{:force=>true}。这不会发生在任何其他控制器操作上 这是我的错误 ArgumentError in RegistrationsController#edit wrong number of arg
ArgumentError in RegistrationsController#edit
wrong number of arguments (1 for 0)
Rails.root: *
Application Trace | Framework Trace | Full Trace
app/controllers/application_controller.rb:6:in `authenticate_user!'
这是我的路线,我正在尝试访问
edit_user_registration GET /users/edit(.:format) registrations#edit
这是我的控制器
class RegistrationsController < Devise::RegistrationsController
def build_resource(*args)
super
if session[:omniauth]
@user.apply_omniauth(session[:omniauth])
@user.valid?
end
end
def edit_password
end
end
这里是before_filter方法
class ApplicationController < ActionController::Base
protect_from_forgery
private
def authenticate_user!
unless signed_in?
redirect_to '/users/sign_in'
end
end
end
顺便说一句,线路是由Deviate提供给我的过滤器是由Deviate提供的,所以不要试图弯曲它
在需要的控制器中使用它
如果您正在查找未经身份验证的用户,则可以在路由文件中执行此操作
希望下面的部分已经设定
devise_for :users, :controllers => {:registrations => "registrations", :sessions => "sessions"}
过滤器是由Desive提供的,所以不要试图弯曲它
在需要的控制器中使用它
如果您正在查找未经身份验证的用户,则可以在路由文件中执行此操作
希望下面的部分已经设定
devise_for :users, :controllers => {:registrations => "registrations", :sessions => "sessions"}
devise_for :users, :controllers => {:registrations => "registrations", :sessions => "sessions"}