kxh*_*tiz 97 migration ruby-on-rails
rails generate migration AddRetweetsCountToTweet retweets_count:integer
Run Code Online (Sandbox Code Playgroud)
好吧,我使用上面的行来创建迁移文件,该文件在生成的文件中自动生成代码,以向数据类型为整数的模型Tweet添加列.现在,我想在生成迁移文件时向添加的列添加默认值.那可能吗?我用谷歌搜索但找不到.伙计们需要帮助.
Jit*_*its 42
t.integer :retweets_count, :default => 0
Run Code Online (Sandbox Code Playgroud)
... 应该管用.
是的,我无法在迁移生成器命令中看到如何使用"default",但是在应用"rake db:migrate"之前,通过修改生成的迁移文件,可以如下指定新字符串列的默认值:
class AddColumnToWidgets < ActiveRecord::Migration
def change
add_column :widgets, :colour, :string, default: 'red'
end
end
Run Code Online (Sandbox Code Playgroud)
这会在我的"Widget"模型中添加一个名为"color"的新列,并将新窗口小部件的默认"颜色"设置为"red".
我尝试在迁移文件中使用 t.boolean :active, :default => 1 来创建整个表。运行该迁移后,当我签入数据库时,它变为空。即使我告诉默认为“1”。之后,我像这样稍微更改了迁移文件,然后它对我来说可以在创建表迁移文件上设置默认值。
t.boolean :active, :null => false,:default =>1。为我工作。
我的Rails框架版本是4.0.0
归档时间: |
|
查看次数: |
88153 次 |
最近记录: |