我在这里不知所措。我有三个Devise范围(豆类,蔬菜和水果)
我有一个用户表,豆类,水果和蔬菜表引用它:
我可以使用3个范围中的2个注销,但是有一个范围(水果)我在那里注销并且我的用户从数据库中删除。我退出后收到此错误消息。
翻译缺失:en.devise.sessions.fruit.destroyed
我正在使用以下代码注销:
link_to "Logout", destroy_fruit_session_path, :method => "delete"
以下是日志中的输出:
在2012-03-11 21:43:58 -0400开始为127.0.0.1删除“/ fruits / logout” 水果加工:: SessionsController#destroy as HTML 参数:{“authenticity_token”=>“2MwwcPF4NTWUUXDXiAh + v0B85CPNeUrW + R7S78FWo9E =”} 用户负载(0.8ms)SELECT“users”。* FROM“users”WHERE“users”。“id”= 335 LIMIT 1 (0.2ms)BEGIN SQL(0.6ms)DELETE FROM“users”WHERE“users”。“id”= $ 1 [[“id”,335]] (1.3ms)COMMIT 重定向到http://localhost:3000/fruit/login
唉!我觉得太蠢了!我想出了自己的问题而且非常尴尬......
我没有使用Devises的SessionController覆盖我的SessionsController,而是使用注册控制器意外覆盖它,注册控制器会在销毁时删除用户。
我有
#incorrect!!!
class Fruits::SessionsController < Devise::RegistrationsController
而不是
#correct...
class Fruits::SessionsController < Devise::SessionsController
答案 0 :(得分:0)
尝试
:method => :delete
而不是
:method => "delete"