7

我有以下迁移:如何删除HSTORE密钥?

class CreateFoos < ActiveRecord::Migration 
    def change 
    create_table :foos do |t| 
     t.hstore :foos_properties 
    end 
    end 
end 

在hstore列中,我有2个键::foo:bar。是否有可能创建另一个迁移来删除:foo?它应该是什么样子?

我发现这一点:

Foo.update_all([%(foos_properties = delete("foos_properties",?)), 'foo']) 

那是安全的吗?或者我应该考虑一个更明智的方法?

+0

你可以改变你的钥匙,而不需要迁移。 – 2014-09-29 08:45:25

回答

0

我认为你的方法很好。我做了一些类似的东西:

ObjectModel.find_each do |object_model| 
    object_model.foos_properties.delete("foo") 
end