Syl*_*lar 23 ruby ruby-on-rails ruby-on-rails-4
我知道如何将一列添加到现有表中.现在我必须在现有表中添加许多列.是否有更短的方式:
add_col1_col2_col3_col4_.._coln_to_tables col1:integer col2:integer etc...
对于我必须添加的所有其他列,我是否必须执行上述操作?
Shw*_*eta 43
没有必要.你可以做
假设TableName是用户
rails g migration AddColumnsToUser col1:integer col2:integer .. etc.
Pro*_*oto 17
这是ActiveRecord上的一个很好的资源:迁移,它列出了可用于操作数据库的所有命令.你也可以这样做:
rails g migration AddMoreColumnsToModel
然后打开迁移文件并放入:
def change
  add_column :table, :new_column, :type
  # add as many columns as you need 
end
如果你想做Maxd建议的事情,拥有相同类型的100列自动创建,他的代码是个好主意.
只需创建迁移并生成这些列即:
class ChangeTables < ActiveRecord::Migration
  def change
    change_table :tables do |t|
      100.times do |i|
        t.integer :"column_#{i}"
      end
    end
  end
end
| 归档时间: | 
 | 
| 查看次数: | 21973 次 | 
| 最近记录: |