Rails Activerecord将列添加到多个表中

问题描述 投票:0回答:1

我需要进行迁移,其中将一列添加到三个单独的表中。 views列是整数,还需要默认=>0。如何使用activerecord命令添加这些列?我正在使用postgreSQL数据库。

这是我的迁移外观:

class AddViewsToRestaurantsMenusDishes < ActiveRecord::Migration[6.0]
   def change
     add_column Restaurant, :views, :integer, :default => 0
     add_column Menu, :views, :integer, :default => 0
     add_column Dish, :views, :integer, :default => 0
   end
end
ruby-on-rails database postgresql activerecord rails-activerecord
1个回答
0
投票

add_column(table_name, column_name, type, **options)

add_column(table_name, column_name, type, **options)

这假定您的表是常规命名的。如果您真的想从模型类列表中执行相同的操作,则可以执行以下操作:

class AddViewsToRestaurantsMenusDishes < ActiveRecord::Migration[6.0]
   def change
     add_column :restaurants, :views, :integer, default: 0
     add_column :menus, :views, :integer, default: 0
     add_column :dishes, :views, :integer, default: 0
   end
end
© www.soinside.com 2019 - 2024. All rights reserved.