Как сгенерировать миграцию для изменения столбца базы данных в 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
Другие вопросы по тегам