设计路线的问题 - 视图页面中的错误

时间:2011-09-16 04:56:40

标签: ruby-on-rails-3 devise routes

在安装Devise之前我有一个现有的用户模型,所以我按照here的说明进行操作。

我甚至生成了设计视图。但是当我在我的localhost并键入localhost:3000 / users / sign_in或通过设计可用的任何其他路由时,它不起作用。

此外,我使用

获得的用户现有的RESTful路由
resources :users

不再可用,除非我同时拥有:

devise_for :users
resources :users

但我认为我应该删除资源:当我在路由文件中使用devise_for:users行时,用户将被删除。

发生了什么事?有没有人有任何想法?

修改

问题是当我转到用户/密码时,它告诉我没有ID =密码的用户,但我可以使用此路由。

我也遇到了用户/ sign_in和users / sign_out的问题。由于某种原因,它会重定向回我的根路径。有时候它会起作用,有时则不起作用,我不知道为什么。日志看起来像这样:

Started GET "/users/sign_in" for 127.0.0.1 at 2011-09-16 19:05:43 -0400
Processing by Devise::SessionsController#new as HTML
User Load (0.3ms)  SELECT `users`.* FROM `users` WHERE `users`.`id` = 1 LIMIT 1
Redirected to http://localhost:3000/

1 个答案:

答案 0 :(得分:0)

这究竟不起作用?你在日志或其他地方得到了什么有用的东西吗?另外,您是否设置了:users模型以包含devise :recoverable, :authenticateable, ...等?

您需要在config / routes.rb中定义devise_forresourcesdevise_for设置将发送到设计控制器的路由,但不处理其他任何操作。因此,您仍然需要正常的资源路由,以便用户模型进行添加,更新,删除等操作。