我有以下迁移:

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

关于ruby-on-rails - 如何删除HSTORE key ?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26095760/

10-13 02:12