我有一个表“products”,想用另一列的数据填充一列,即:Product.first.product_id == Product.first.barcode
当前将条形码保存在product_idbarcode中为零。
编辑:我想用product.product_id中的现有数据填充所有产品条码。
我一直试图用谷歌搜索,但仍然不知道该如何迁移数据。谢谢你的帮助!
编辑:我使用postgresql。

最佳答案

您可以使用ActiveRecord::Relation#update_all更新数据库中的现有记录。这可以从rails控制台或使用Custom rake task来执行。

Product.update_all("barcode = product_id")

对于将来的记录,使用回调。产品内.rb
before_save :update_barcode

def update_barcode
  self.barcode = self.product_id
end

关于ruby-on-rails - 用另一个字段填充db中的字段,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38972906/

10-13 01:55