2016-08-02 3 views
3

Я хочу, чтобы добавить новый столбец в одной из моей таблицы в Rails 5. Я недавно переименовали столбец, используя следующий путь:Как добавить новый столбец в существующую таблицу в Rails 5?

rails g migration ChangeJobsTable 

затем в 20160802104312_change_jobs_table.rb:

class ChangeJobsTable < ActiveRecord::Migration[5.0] 
    def change 
    rename_column :jobs, :skills, :skills1 
    end 
end 

затем

rails db:migrate 

Он работал нормально, но теперь, если я хочу добавить новый столбец skills2, мне нужно сделать это вот так?

class ChangeJobsTable < ActiveRecord::Migration[5.0] 
    def change 
    add_column :jobs, :skills2 
    end 
end 
+0

вы на правильном пути .... идти вперед –

+0

я получил эту ошибку: рельсы прерваны! StandardError: произошла ошибка, эта и все последующие миграции отменены: неправильное количество аргументов (учитывая 2, ожидаемое 3..4) –

+0

да, просто следуйте инструкциям hgsongra (hitesh) .. –

ответ

12

Вы забыли добавить datatype, ниже обновлена ​​миграция.

class ChangeJobsTable < ActiveRecord::Migration[5.0] 
    def change 
    add_column :jobs, :skills2, :string 
    end 
end 
+0

спасибо большое :) –

7

Вы действительно забыли datatype. Вы также можете сделать это с помощью консоли в будущем:

rails g migration AddSkills2ToJobs skills2:string

Смежные вопросы