ruby-on-rails – Rails 4 Postgresql数组数据类型:更新值
发布时间:2020-12-17 02:21:33 所属栏目:百科 来源:网络整理
导读:我刚开始在Postgres中使用Rails 4中的数组数据类型,但是我无法在现有数组上获取值以进行更新.我有一个名为’quantity’的列,它是一个整数数组([0,0]).我想更新’quantity [0]’的值,我在控制台中尝试了以下内容: a = Asset.find(2) = #Asset id: 2,quantity
我刚开始在Postgres中使用Rails 4中的数组数据类型,但是我无法在现有数组上获取值以进行更新.我有一个名为’quantity’的列,它是一个整数数组([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,0]> 如您所见,资产对象的数量值是变化的,但是当我尝试使用“a.save”保存对象时,重新加载对象时不会反映更改. 任何帮助将不胜感激. 谢谢 解决方法
我对
http://apidock.com/rails/ActiveRecord/Dirty的解读是你必须打电话给… _ will_change!在更改属性之前.您应该能够通过检查各种情况下的更改来确认这一点.
更新:我刚刚使用字符串属性测试了行为,即使在调用… _ will_change之前进行了更改,它仍然会保存更新的字符串,因此我的解释可能已关闭. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |