0

我正在尝试单击链接来调用此操作。

<% link_to "popup", :action => 'user_logs_out', :controller => 'application'%>

在我的应用程序控制器中,我有这个动作:

def user_logs_out
    gon.display_sign_out_popup = true
end

我怎样才能调用这个动作?它总是显示模板错误。由于该操作只需要设置一个布尔值,因此我觉得不需要为其提供视图文件。

4

2 回答 2

0

如果你真的想要一个动作什么都不渲染,你可以使用render :nothing => true.

def user_logs_out
  display_sign_out_popup = true
  render :nothing => true
end

但是,几乎可以肯定您没有理由要这样做。

于 2012-09-01T02:55:10.353 回答
0

你必须把

def user_logs_out
    display_sign_out_popup = true
    respond_to do |format|
      format.js
    end
end

您还必须:remote => true输入您的 link_to

...如果您想从头开始学习身份验证,我会推荐 Hartl 的免费教程:http ://ruby.railstutorial.org/book/ruby-on-rails-tutorial?version=3.2#cha-modeling_users

于 2012-09-01T02:55:23.250 回答