我可以将默认值传递给rails生成迁移吗?

我想知道是否可以将默认值传递给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 

你不能: https : //guides.rubyonrails.org/active_record_migrations.html#column-modifiers

null和default不能通过命令行指定。

Rails迁移生成器不处理默认值,但在生成迁移文件后,您应该使用以下代码更新迁移文件

 add_column :users, :disabled, :boolean, default: false 

你也可以看到这个链接 – http://api.rubyonrails.org/classes/ActiveRecord/Migration.html

Rails中的默认迁移生成器不处理默认值,目前无法在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的文档没有提到页面中的“修饰符”一词。