如何删除HSTORE密钥?
问题描述:
我有以下迁移:如何删除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'])
那是安全的吗?或者我应该考虑一个更明智的方法?
答
我认为你的方法很好。我做了一些类似的东西:
ObjectModel.find_each do |object_model|
object_model.foos_properties.delete("foo")
end
你可以改变你的钥匙,而不需要迁移。 – 2014-09-29 08:45:25