Rails设置会话变量

Rails设置会话变量

本文介绍了使用link_to Rails设置会话变量的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

是否可以使用link_to设置会话变量?我不想设置一个参数,因为我有一个重定向并被擦除掉。

Is it possible to set a session variable with a link_to? I don't want to set a parameter, because I have a couple redirects and it gets wiped away.

我想通过一个链接将会话变量modelid设置为你。

i.e. I want to set a session variable "modelid" to "you" with a link.

我想在FB登录oauth运行时设置会话变量...

I want to set a session variable while the FB login oauth runs...

<%= link_to "New Post", "#", {:class => "btn btn-primary btn-large inline pull-left", :onclick => "FB.login(function(response){},{perms:'email, publish_stream, user_photos'});" } %>


推荐答案

您可以在其中一个控制器中创建一个操作设置此会话变量,然后使用AJAX请求调用它。

You can create an action in one of your controllers that sets this session variable and then call it with an AJAX request.

路由:

post "/myroute", :to=>"some_controller#set_my_session_var"

some_view .html.erb(jquery example):

some_view.html.erb (jquery example):

$(function(){
  $("#my-button").click(function(){
    $.post('/myroute');
  })
})

some_controller.rb:

some_controller.rb:

def set_my_session_var
  session[:somekey]='somevalue'
end

这篇关于使用link_to Rails设置会话变量的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-21 15:07