使用 Ruby on Rails 更新和访问会话

莉亚·迪迪奥

我正在使用 ruby​​ on rails 2.5。

我有一个对象“payment_plan”。这个对象可以随着改变的切换行为而改变,我需要让这个对象在整个会话中保持活动状态,最后它应该在我的mongo数据库中保存它的一部分我需要始终访问对象的最新状态。控制器应该能够更新对象,视图应该能够访问对象的最新状态。

关于如何做这样的事情的任何见解都会很棒:)

我尝试在应用程序控制器中创建一个辅助函数,但从视图访问它时遇到问题。

另外我不喜欢将对象的状态保存在 db 中,因为以后会有太多的 db 调用。

静脉输液

要从视图访问控制器辅助函数,请将其定义为辅助函数:

class SomeController < ApplicationController
   helper def some_helper
   end
end

至于在会话中存储一些数据 - 没关系,Rails 为session[:my_object_prop] = 1/提供了很好的会话存储机制session[:my_object_prop]参见官方指南

但请记住:

  • 默认情况下,会话存储在 cookie 中,cookie 会在每次请求时从客户端浏览器的标头中传递到您的服务器(即使是图像,如果它们在同一域中),因此在那里保存少量数据是可行的。
  • 用户可以清除他们的 cookie,数据将会丢失(这通常很好)
  • 与后者相反 - 用户可能会带着来自旧版本代码的会话数据来到您的应用程序

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Ruby on Rails中使用

来自分类Dev

Ruby on Rails:更新属性

来自分类Dev

使用Scala访问google API,Ruby on Rails中的前端

来自分类Dev

Ruby on Rails访问使用.last找到的记录的属性

来自分类Dev

使用Scala访问google API,Ruby on Rails中的前端

来自分类Dev

使用表单输入而不更新模型Ruby on Rails

来自分类Dev

Ruby / Rails使用数组项更新模型属性吗?

来自分类Dev

Rails使用的是错误版本的Ruby

来自分类Dev

使用Ruby Rails设置域

来自分类Dev

使用Ruby on Rails的Range Slider

来自分类Dev

如何“使用Ruby on Rails表单”

来自分类Dev

使用Qr代码的Ruby on Rails

来自分类Dev

Ruby on Rails使用POST方法

来自分类Dev

使用Ruby on Rails分割javascript

来自分类Dev

使用关联的Ruby on Rails订单

来自分类Dev

在Ruby on Rails中使用:owner

来自分类Dev

在Ruby on Rails中使用:owner

来自分类Dev

如何使用Ruby on Rails关联?

来自分类Dev

在 Ruby On Rails 中使用 SQL

来自分类Dev

Ruby on Rails:使用Parsely-Rails

来自分类Dev

Ruby on Rails 错误使用 Rails 方法

来自分类Dev

Ruby:如何在Windows中更新到Ruby 2.1?(使用Rails安装程序安装了1.9.3)

来自分类Dev

在Ruby on Rails 3.2中使用Mongo DB会话存储时如何清除旧/过时的会话

来自分类Dev

WordPress;使用jquery和ajax更新和存储会话变量

来自分类Dev

Ruby on Rails - 编辑更新操作

来自分类Dev

使用Ruby on Rails会话过期后如何重新加载或刷新页面

来自分类Dev

在ElastiCache上将Ruby on Rails会话保存

来自分类Dev

Ruby on Rails会话控制器InvalidAuthenticityToken

来自分类Dev

在Ruby on Rails中的Javascript中设置会话