【问题标题】:Using devise with Rails 3 beta在 Rails 3 beta 中使用设计
【发布时间】:2023-03-16 18:51:01
【问题描述】:

我目前正在尝试在我即将进行的项目中使用Devise 1.1.pre3 作为身份验证,但我无法让它正常工作。

我已经完成了文档中所说的一切,安装了warden 和正确的 Devise 版本,运行安装并使用生成器创建模型。但是当我尝试访问注册表单(localhost:3000/users/sign_up)时,我得到的只是

No route matches "/users/sign_up"

但是当我运行rake routing 时,我得到以下信息:

...
GET  /users/sign_up(.:format) {:controller=>"devise/registrations", :action=>"new"}
...

我没有与该控制器匹配的任何文件。

我是否遗漏了任何步骤(安装、更新路由等和创建模型)

【问题讨论】:

    标签: ruby-on-rails routing devise


    【解决方案1】:

    我认为默认的登录路径是 /users/sign_in。

    您可以在路由中通过传递它来覆盖它 :path_names => {:sign_in => "login", :sign_out => "logout"}

    然后您将使用 /users/login 登录,然后使用 /users/logout 注销。

    【讨论】:

      【解决方案2】:

      您应该在路线中确定相关模型的范围......例如......

      devise_scope :user do
        get "register"  => "devise/registrations#new" 
        get "login"  => "devise/sessions#new"    
        get "logout" => "devise/sessions#destroy"
      end 
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-06-29
        • 1970-01-01
        相关资源
        最近更新 更多