不能让Devise路径正确

时间:2013-04-10 17:15:59

标签: ruby-on-rails devise

我安装了Devise来验证我的应用程序。我遵循了有关宝石的所有说明,而且那部分似乎进展顺利。

但是现在我正在尝试链接到Register页面,我得到一个我无法弄清楚的疯狂错误......由于某种原因,rails无法找出设计控制器所在的位置...... < / p>

from:public / index.html.erb(公共登录页面)

<div class ="getstarted">
  <table>
    <tr>
      <td id = "introtext"> 
        <p>Foo is good..l here is why: </p>
        <ul>
          <li>Improved quality</li>
          <li>Technology consistencies </li>
          <li>Cost efficiencies</li>
          <li>Increased security</li>
         <li>Improved adherence to compliance standards</li>
       </ul>    

      </td>
      <td id = "buttons">
        <%= button_to "Sign Up for an Account", new_user_registration_path, :method => "get" %>
        <br/>
        <%= button_to "Log In to your Account", new_user_session_path, :controller => "devise/session", :method => "get" %>
      </td>
    </tr>
  </table>

</div>

routes.rb包含以下行:

 devise_for :users

并且Routes表似乎有它所需要的东西:

    new_user_session GET    /users/sign_in(.:format)                                   devise/sessions#new
        user_session POST   /users/sign_in(.:format)                                   devise/sessions#create
destroy_user_session DELETE /users/sign_out(.:format)                                  devise/sessions#destroy
       user_password POST   /users/password(.:format)                                  devise/passwords#create
   new_user_password GET    /users/password/new(.:format)                              devise/passwords#new
  edit_user_password GET    /users/password/edit(.:format)                             devise/passwords#edit
                     PUT    /users/password(.:format)                                  devise/passwords#update

cancel_user_registration GET /users/cancel(.:format)设计/注册#uncod        user_registration POST /users(.:format)设计/注册#create    new_user_registration GET /users/sign_up(.:format)设计/注册#new   edit_user_registration GET /users/edit(.:format)设计/注册#edit                          PUT /users(.:format)设计/注册#update                          删除/users(.:format)设计/注册#stroy

当我点击按钮进行注册时,请转到链接:

http://localhost:3000/users/sign_up?

和Rails给我错误:

No route matches {:controller=>"devise/public"}

登录按钮也是如此:

http://localhost:3000/users/sign_in?

No route matches {:controller=>"devise/public"}

我将“public”的视图设置为我的公共可查看(预认证)页面......我看到Rails正在设计目录(不存在)中查找。

我也试过删除?在URL的末尾......没有产生任何差异。

我被困了,已经投入了几个小时。希望有人可以帮助我。

1 个答案:

答案 0 :(得分:0)

对于“登录到您的帐户”按钮,我会将当前路线从“ new_user_session_path ”更改为“ user_session_path ”。

此外,我会将'button_to'更改为' link_to '

看看它做了什么