我刚刚开始在带有 Rails 4 的 Postgres 中使用数组数据类型,但我无法获取现有数组上的值以进行更新。我有一个名为“数量”的列,它是一个整数数组( [0,0] )。我想更新 'quantity[0]' 的值,我在控制台中尝试了以下操作:
a = Asset.find(2)
=> #<Asset id: 2, quantity: [0,0]>
a.quantity[0] = 5
=> 5
a.quantity_will_change!
=> [5, 0]
a.save
=> true
a.reload
=> #<Asset id: 2, quantity: [0,0]>
如您所见,资产对象的数量值发生了变化,但是当我尝试使用“a.save”保存对象时,重新加载对象时不会反映更改。
任何帮助将不胜感激。
谢谢