ActiveRecord 序列化不能与哈希列一起正常工作
ActiveRecord serialize not working properly with Hash column
我正在尝试使用 ActiveRecord 的序列化方法将哈希存储在 table 列中,但我无法使其工作。我正在使用 Rails 4.2.0 和 RailsApi 0.3.1
这是我的模型:
class Agreement < ActiveRecord::Base
serialize :phone_numbers, Hash
end
phone_numbers 是需要的文本列。
然后在控制台中:
a = Agreement.new(phone_numbers: {"dario" => "12345"})
a.phone_numbers
=> "{\"dario\"=>\"12345\"}" #(Note this is a string, not a Hash as I would expect)
a.phone_numbers["dario"]
=> "dario" #(Not "12345" as I would expect)
我是不是漏了什么东西??谢谢!
您表现出的行为与 serialize
调用错误一致,要么列名错误,要么完全缺失。例如。 https://gist.github.com/smathy/2f4536d3e59b7a52c855
你在你的问题中显示了正确的代码,所以要么你没有正确复制粘贴,要么你没有重新启动你的 rails 控制台,因为 adding/correcting serialize
打电话?
我正在尝试使用 ActiveRecord 的序列化方法将哈希存储在 table 列中,但我无法使其工作。我正在使用 Rails 4.2.0 和 RailsApi 0.3.1
这是我的模型:
class Agreement < ActiveRecord::Base
serialize :phone_numbers, Hash
end
phone_numbers 是需要的文本列。
然后在控制台中:
a = Agreement.new(phone_numbers: {"dario" => "12345"})
a.phone_numbers
=> "{\"dario\"=>\"12345\"}" #(Note this is a string, not a Hash as I would expect)
a.phone_numbers["dario"]
=> "dario" #(Not "12345" as I would expect)
我是不是漏了什么东西??谢谢!
您表现出的行为与 serialize
调用错误一致,要么列名错误,要么完全缺失。例如。 https://gist.github.com/smathy/2f4536d3e59b7a52c855
你在你的问题中显示了正确的代码,所以要么你没有正确复制粘贴,要么你没有重新启动你的 rails 控制台,因为 adding/correcting serialize
打电话?