Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 无法在ruby on rails Desive gem中使用注销_Ruby On Rails_Ruby On Rails 3_Devise - Fatal编程技术网

Ruby on rails 无法在ruby on rails Desive gem中使用注销

Ruby on rails 无法在ruby on rails Desive gem中使用注销,ruby-on-rails,ruby-on-rails-3,devise,Ruby On Rails,Ruby On Rails 3,Devise,在我的小rails应用程序中,我有一个名为say的控制器,其中有两个页面“你好”和“再见”。我在应用程序中安装了Desive。最初,我可以以/users/sign_-in的身份访问sing_-in页面,同样也可以进行注册。我无法注销,由于无法注销,我无法访问注册或再次登录页面。现在我在eh say/hello页面中输入了以下代码 <h1>Say#hello</h1> <% if user_signed_in? %> Hey signed in as <%

在我的小rails应用程序中,我有一个名为say的控制器,其中有两个页面“你好”和“再见”。我在应用程序中安装了Desive。最初,我可以以/users/sign_-in的身份访问sing_-in页面,同样也可以进行注册。我无法注销,由于无法注销,我无法访问注册或再次登录页面。现在我在eh say/hello页面中输入了以下代码

<h1>Say#hello</h1>
<% if user_signed_in? %>
Hey signed in as <%= current_user.email %>.Not you? 
<%= link_to "Logout", destroy_user_session_path %>
<% else %>
Hey <%= link_to "Login", new_user_session_path %> or Hey <%= link_to "Logup", new_user_registration_path %>
<% end %>
</p>
每当我访问say/hello页面时,这就是我得到的输出

  Links

Hey signed in as x@gmail.com.Not you? Logout 
当我单击注销时。上面说

No route matches [GET] "/users/sign_out"
当我直接访问用户/登录时,我会被路由到say/hello页面

我犯了什么错误?我该如何注销

我也试过了

destroy_user_session_path, :method => :delete
希望这能有所帮助

在您的routes.rb中尝试此功能


Desive_for:users确实获得“/users/sign_out”=>“Desive/sessions#destroy”结束

尝试使用Desive_for:users,controller:{sessions:'sessions}代替路由文件中的“Desive_for:users”。和HTMLD中的“删除”%>是否显示相同的错误?您的应用程序中是否有会话控制器?Demo::application.routes.draw Do designe_for:用户、控制器:{sessions:'sessions'}获取“say/hello”获取“say/再见”#优先级基于创建顺序:first created->highest priority.#看看你所有的路线都是如何用“耙路”布局的在更改routes.rb和html文件后,您可以使用“root”root:to=>“say#hello”yabachan将站点的根路由到routes.rb和html文件。我收到了相同的错误OK。现在,如果应用程序中没有会话控制器。只需从中复制并将其放置在控制器中。然后将其第一行更改为“类sessioncontrollerdestroy_user_session_path, :method => :delete