我正在尝试在Spree迁移中完成以下任务:
ActiveRecord::Base.connection.tables.each do |table|
table.constantize.update_all(user_id: 1)
end
:user_id存在于数据库中的所有表中。
我想将所有表中的:user_id列更新为1。
"spree_products".constantize
没有返回" Spree :: Product"
我已成功使用以下代码更新user_ids:
ActiveRecord::Base.connection.tables.each do |table|
Spree.const_get(table.gsub("spree_", "").classify).update_all(user_id: 1)
end
答案 0 :(得分:0)
您可以使用_
gsub /
并使用classify
> "spree_products".gsub('_', '/').classify
# => "Spree::Product"