持久化变量Rails应用程序控制器

时间:2015-01-24 23:28:40

标签: ruby-on-rails ruby-on-rails-4

我的应用程序控制器上有这样的东西。

def selected_position
  @position = params[:position] if params and params.has_key?(:position)
end

即使进行了验证,该值也会在控制器调用中丢失。我不想为此使用会话,所以有任何解决方案来保持这个价值吗?谢谢!

2 个答案:

答案 0 :(得分:0)

解决方案是将位置存储在客户端。也许本地存储是一个不错的选择。但请注意,数据可能会被更改或泄露。

答案 1 :(得分:0)

HTTP在设计上是无状态的,因此,Rails控制器。在控制器调用(也称为会话)之间存储数据的唯一方法是在客户端存储数据 - 会话,cookie(或本地存储)或服务器端 - 数据库,内存,文件等。< / p>