Ahm*_*uny 4 sqlite ruby-on-rails ruby-on-rails-4
这个问题不能再解释了。
db/migrate/20140415150026_create_poll_answers.rb
class CreatePollAnswers < ActiveRecord::Migration
def change
create_table :poll_answers do |t|
t.string :content
t.integer :counter
t.boolean :instant_value
t.timestamps
end
end
end
Run Code Online (Sandbox Code Playgroud)
数据库/模式
create_table "poll_answers", force: true do |t|
t.string "content"
t.integer "counter"
t.boolean "instant_value"
t.datetime "created_at"
t.datetime "updated_at"
t.integer "poll_question_id"
end
Run Code Online (Sandbox Code Playgroud)
我找到了一个答案,但我不确定它是否适用于 rails 4,我也不知道应该在哪里写!!!
add_column :Table_name, :colman_name, :data_type, :default => "default"
Run Code Online (Sandbox Code Playgroud)
您可以简单地为新迁移设置这样的默认值:
create_table :poll_answers, force: true do |t|
t.string :content, default: 'no_text'
t.integer :counter, default: 0
t.float :money_in_pocket, default: 0.0
end
Run Code Online (Sandbox Code Playgroud)
或者您可以像这样更改现有的迁移:
def change
change_column :poll_answers, :counter, :integer, default: 100
end
Run Code Online (Sandbox Code Playgroud)
或者更短:
change_column_default(:poll_answers, :counter, 3000)
Run Code Online (Sandbox Code Playgroud)