我遇到了一个奇怪的问题,必须是我的用户错误,但无法弄清楚。如何使用Ruby on Rails 4.0.1/PostgreSQL Hstore更新数据记录的值?
我正在使用Ruby 1.9.3-p194,Rails 4.01,PostgreSQL。
我有一个模型,客户,一个叫数据列,它是一个hstore类型。出于某种原因,我无法使用任何新键/值更新数据(hstore)列,也无法更新现有键的值。我可以做一个插入,并指定任何关键/值没有任何问题。
客户id:1,first_name:“Mark”,last_name:“Test”,data:{“balance”=>“0”},created_at:“2013-11-27 14:39:09”,updated_at : “2013年11月27日14时39分09秒”
c.data["balance"] = "100"
c.save
(0.2ms的)BEGIN
(0.3ms的)COMMIT =>真
如果我做一个update_attributes方法,它保存。
c.update_attributes({:data => {"balance" => "343"}})
我没有看到任何错误或异常,当我用c.save!。有人有主意吗?
瞎猜,但没有0原有的平衡如何在那里得到的,并且它获取调用上保存? – davidfurber
0的原始余额是通过做Customer.create(:data => {“balance”=>“0”},等等)来完成的。) – james