Gem 配置 devise 路由,出现 undefined method `name' for nil:NilClass 错误

stephen · 2012年08月31日 · 最后由 stephen 回复于 2012年08月31日 · 4351 次阅读

我重载了 devise 的 registration controller,现在是 account controller 然后在他的 edit 方法里根据不同参数,加载不同的表单。 所以 localhost/account/edit?form=password 我想实现 localhost/account/edit/password 这样的效果,所以我修改了路由

devise_scope :members do
    get "account/settings/:form" => "account#edit"
    #get "account/edit/:form" => "account#edit"
end

但是这样修改后,访问出现了这个错误

NoMethodError in AccountController#edit

undefined method `name' for nil:NilClass

不带后面的参数,localhost/account/edit 就不会错误, 带参数就会出错,localhost/account/edit/password 请教哪里错误了?

需要 登录 后方可回复, 如果你还没有账号请 注册新账号