Rails Cookie的价值与具有辅助作用域的控制器的价值不同吗?

qichunren

ENV:

Rails 3.2.15
ruby 1.9.3p194(2012-04-20修订版35410)[x86_64-darwin12.2.0]

我在控制器中设置cookie并从helper方法中读取它,两个结果不一样。为什么?

# in controller
cookies[:"position"] = { :value => [ 100,200 ], :expires => 1.years.from_now }
# read it same time, it display value is an array [100, 200]
# But I read this cookies in another request, it display "100&200"


# in helper
module WelcomeHelper
  def get_position
    cookies[:"position"]
  end

end

```

get_position 方法返回 100&200

在哪里可以找到文件?我在代码中发现,其散布的数组可以直接存储在cookie中并直接读取:https : //github.com/rails/rails/blob/v3.2.15/actionpack/lib/action_dispatch/middleware/cookies.rb#L45,但是为什么我在cookie中存储了一个文件,而读取的结果却是一个字符串?

Kostas Rousis

如果您想对Cookie使用非字符串值,请先将其转换为JSON。

# using the preferred 1.9 hash syntax and no need to quote "position"
cookies[:position] = { value: JSON.generate([ 100,200 ]), expires: 1.years.from_now }

查看Cookies上Rails 4.1文档

Rails 3.2文档通过暗示可以将Ruby数组直接存储为cookie值而在此问题上引起了一些混乱,该数组值最近通过使用JSON dump / load和随后通过更安全的JSON generate / parse进行了修复

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

控制器中的Rails辅助模块

来自分类Dev

具有多态关联的Rails + rspec控制器规范

来自分类Dev

我可以在 rails 的单个页面中呈现两个不同的控制器操作吗

来自分类Dev

Rails作用域在规格和控制台方面有所不同

来自分类Dev

Ruby on Rails 控制器

来自分类Dev

如何在Ruby on Rails控制器中手动联接具有不同属性名称的两个不同表

来自分类Dev

如何在Ruby on Rails控制器中手动联接具有不同属性名称的两个不同表

来自分类Dev

Rails产生设计:控制器不起作用

来自分类Dev

Command Rails G控制器不起作用

来自分类Dev

Ruby on Rails路由到控制器不起作用

来自分类Dev

如何从Rails中的不同控制器创建记录?

来自分类Dev

Rails redirect_to不同的控制器,然后调用方法

来自分类Dev

从Rails 4中的任何控制器渲染不同的视图

来自分类Dev

Rails搜索表单在不同的控制器中?

来自分类Dev

Rails:在不同控制器中调用模型中的方法

来自分类Dev

Rails模型是普通的ruby类,可用于存储不同控制器动作之间的状态吗?完全没有活动记录,也没有数据库

来自分类Dev

Rails中带有response_to的控制器的不同布局

来自分类Dev

在Rails 4中路由具有多个单词的控制器

来自分类Dev

ActiveModel :: ForbiddenAttributesError + cancan + rails 4 +具有范围控制器的模型

来自分类Dev

Rails控制器过滤器在Ruby中具有什么语言功能?

来自分类Dev

Rails MVC体系结构-具有多个控制器源的视图

来自分类Dev

在Rails 4中路由具有多个单词的控制器

来自分类Dev

Rails 4+:具有多个关联的单一资源,控制器组织

来自分类Dev

Rails:每个型号都需要控制器吗?

来自分类Dev

Ruby on Rails-没有视图的控制器

来自分类Dev

Rails路由没有控制器名称的短URL

来自分类Dev

Rails:如何从控制器返回有效的JavaScript?

来自分类Dev

Rails路由没有控制器名称的短URL

来自分类Dev

没有参数发布到Rails控制器

Related 相关文章

  1. 1

    控制器中的Rails辅助模块

  2. 2

    具有多态关联的Rails + rspec控制器规范

  3. 3

    我可以在 rails 的单个页面中呈现两个不同的控制器操作吗

  4. 4

    Rails作用域在规格和控制台方面有所不同

  5. 5

    Ruby on Rails 控制器

  6. 6

    如何在Ruby on Rails控制器中手动联接具有不同属性名称的两个不同表

  7. 7

    如何在Ruby on Rails控制器中手动联接具有不同属性名称的两个不同表

  8. 8

    Rails产生设计:控制器不起作用

  9. 9

    Command Rails G控制器不起作用

  10. 10

    Ruby on Rails路由到控制器不起作用

  11. 11

    如何从Rails中的不同控制器创建记录?

  12. 12

    Rails redirect_to不同的控制器,然后调用方法

  13. 13

    从Rails 4中的任何控制器渲染不同的视图

  14. 14

    Rails搜索表单在不同的控制器中?

  15. 15

    Rails:在不同控制器中调用模型中的方法

  16. 16

    Rails模型是普通的ruby类,可用于存储不同控制器动作之间的状态吗?完全没有活动记录,也没有数据库

  17. 17

    Rails中带有response_to的控制器的不同布局

  18. 18

    在Rails 4中路由具有多个单词的控制器

  19. 19

    ActiveModel :: ForbiddenAttributesError + cancan + rails 4 +具有范围控制器的模型

  20. 20

    Rails控制器过滤器在Ruby中具有什么语言功能?

  21. 21

    Rails MVC体系结构-具有多个控制器源的视图

  22. 22

    在Rails 4中路由具有多个单词的控制器

  23. 23

    Rails 4+:具有多个关联的单一资源,控制器组织

  24. 24

    Rails:每个型号都需要控制器吗?

  25. 25

    Ruby on Rails-没有视图的控制器

  26. 26

    Rails路由没有控制器名称的短URL

  27. 27

    Rails:如何从控制器返回有效的JavaScript?

  28. 28

    Rails路由没有控制器名称的短URL

  29. 29

    没有参数发布到Rails控制器

热门标签

归档