Как сгенерировать миграцию для изменения столбца базы данных в Rails
Интересно, есть ли способ генерировать миграции, которые изменяют что-то таким же образом, как и для создания таблиц, добавления или удаления столбцов.
Например, для создания таблицы я бы использовал:
rails generate migration CreateProducts name:string part_number:string
Для добавления столбца я бы использовал:
rails generate migration AddUserRefToProducts user:references
Я взял эти примеры из Руководств по Rails, но не смог найти ничего для изменения столбца, скажем, для установки значения по умолчанию.
1 ответ
Из Rails Migrations:
- change_column (table_name, column_name, type, options): изменяет столбец на другой тип, используя те же параметры, что и add_column.
Пример, внутри вашей миграции:
class CahngeColumnInTablename < ActiveRecord::Migration
def change
change_column :tablename, :field, :string , default: <default_value>
end
end