Ответ 1
Вы не можете, единственными признанными модификаторами являются
limit
precision
scale
polymorphic
null
Дополнительная информация: http://guides.rubyonrails.org/migrations.html#supported-type-modifiers
Я хочу знать, могу ли я передать значение по умолчанию в команду rails g migration
. Что-то вроде:
$ rails generate migration add_disabled_to_users disabled:boolean:false #where false is default value for disabled attribute
чтобы сгенерировать:
class AddDisabledToUsers < ActiveRecord::Migration
def change
add_column :users, :disabled, :boolean, default: false
end
end
Вы не можете, единственными признанными модификаторами являются
limit
precision
scale
polymorphic
null
Дополнительная информация: http://guides.rubyonrails.org/migrations.html#supported-type-modifiers
Генератор миграции Rails не обрабатывает значения по умолчанию, но после создания файла миграции вы должны обновить файл миграции с помощью следующего кода
add_column :users, :disabled, :boolean, default: false
вы также можете увидеть эту ссылку - http://api.rubyonrails.org/classes/ActiveRecord/Migration.html
Генератор миграции по умолчанию в Rails не обрабатывает значения по умолчанию, теперь нет способа указать значение по умолчанию, определенное через терминал в миграции рельсов.
вы хотели бы выполнить следующие шаги, чтобы достичь желаемого.
1). Выполнить
$ rails generate migration add_disabled_to_users disabled:boolean
2). Задайте новое значение столбца TRUE/FALSE, отредактировав новый файл миграции.
class AddDisabledToUsers < ActiveRecord::Migration
def change
add_column :users, :disabled, :boolean, default: false
end
end
3). Запуск выше сгенерированной миграции путем выполнения.
$ rake db:migrate
Rails 3.2, похоже, не поддерживает какой-либо модификатор типа командной строки на основе http://guides.rubyonrails.org/v3.2/migrations.html
Документация для Rails 4.1 относится к типам модификаторов, но документация для Rails 3.2 не упоминает слово "модификатор" на странице.