Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 3 更新RubyonRails中的哈希值_Ruby On Rails 3_Ruby On Rails 4 - Fatal编程技术网

Ruby on rails 3 更新RubyonRails中的哈希值

Ruby on rails 3 更新RubyonRails中的哈希值,ruby-on-rails-3,ruby-on-rails-4,Ruby On Rails 3,Ruby On Rails 4,我们有一个存储哈希数据键和值的表,如下所示 sr_category_id_is"=>["194", "195", "196", "197", "198", "199"]} 我们需要使用迁移更新值 样本数据: facets: {"status_x_days"=>"", "sr_category_id_is"=>["194", "195", "196", "197", "198", "199"]} 不能直接将哈希更新到数据库中。 必须将现有哈希分配给变量,对该变量进行修改,将其

我们有一个存储哈希数据键和值的表,如下所示

sr_category_id_is"=>["194", "195", "196", "197", "198", "199"]}
我们需要使用迁移更新值

样本数据:

facets: {"status_x_days"=>"", "sr_category_id_is"=>["194", "195", "196", "197", "198", "199"]}

不能直接将哈希更新到数据库中。 必须将现有哈希分配给变量,对该变量进行修改,将其分配回ActiveRecord对象并更新它

例如。 考虑用户地址是一个哈希

user = User.first
address = user.address
address[:City] = "Ahmedabad" #Changed the city from Delhi to Ahmedabad

user.address = address
user.save

将数据迁移到什么位置?您是否关心哈希的格式,当它被序列化到数据库时,或者?某些ID的现有值已更改,因此我们需要更新它们,同样需要在生产中应用,因此我们使用Migrationary,您确定吗?散列被序列化为纯文本,对吗?因此,我想知道数据库中存储的纯文本的格式将允许您直接更改它。