【发布时间】:2013-05-14 09:20:01
【问题描述】:
我在 Rails 3 应用程序中保存哈希时遇到问题。我可以在使用控制台时保存它 - 当我通过表单提交哈希时它不起作用。
This SO question addresses 它但该解决方案对我不起作用。此外,如果我使用:
serialize :bulk_action, Hash
我得到错误:
Attribute was supposed to be a Hash, but was a String
通过表单保存的哈希值如下所示:
"{\"location\"=>{\"commands\"=>{\"custom_command_one\"=>\"true\", \"custom_command_two\"=>\"true\"}}}"
而通过控制台:
{"location"=>{"commands"=>{"custom_command_one"=>"true", "custom_command_two"=>"true"}}}
我的数据库字段是一个文本字段。通过表单保存哈希的最佳方法是什么?
-- 编辑--
我发现如果我使用符号而不是字符串作为名称,我可以解决这个问题,但它仍然输出一个长字符串,而不是哈希。
【问题讨论】:
-
你使用什么表单标签来输入哈希:input、textarea、...?
-
@moritz 尝试了文本区域和文本输入,但没有成功。想知道是否可能是haml在做某事,但这似乎有些牵强。甚至在 MySql 中切换到 blob 类型。
标签: ruby-on-rails ruby-on-rails-3 hash