Ruby on rails 向rails数据库添加默认值

Ruby on rails 向rails数据库添加默认值,ruby-on-rails,postgresql,rails-migrations,Ruby On Rails,Postgresql,Rails Migrations,我在rails应用程序中创建了一个Postgresql数据库,我想添加默认值 我创建了一个迁移 class AddCityStateDefaults < ActiveRecord::Migration def change change_table :addresses do |t| t.change_default :city, default: "Los Angeles" t.change_default :state, default: "CA"

我在rails应用程序中创建了一个Postgresql数据库,我想添加默认值

我创建了一个迁移

class AddCityStateDefaults < ActiveRecord::Migration
  def change
    change_table :addresses do |t|
      t.change_default :city, default: "Los Angeles"
      t.change_default :state, default: "CA"
    end
  end
end
class AddCityStateDefaults
但这会导致“--:默认值:洛杉矶”,而不仅仅是“洛杉矶”

可以肯定的是,我试图更改的两列分别命名为city和state,它们的类型是character-variable。我通过
bin/rails generate migration addcitystatefaults
创建了迁移,然后编辑了迁移。我不认为我能在最初的创作中写出这些变化(我知道这是可以做到的,但对我来说更复杂。我最终会做到的。)

我不熟悉这一点,事实上,这是我尝试创建的第一个迁移,只是对现有迁移进行了一些小的修改

谢谢。我知道这只是语法上的一个小变化,但要做到这一点很有挑战性


另外,我应该如何做,并且现在正在改变它?

您应该只传递一个值,而不是散列

class AddCityStateDefaults < ActiveRecord::Migration
  def change
    change_table :addresses do |t|
      t.change_default :city, "Los Angeles"
      t.change_default :state, "CA"
    end
  end
end
class AddCityStateDefaults

谢谢。有点明显。我已经说过这是违约的一种变化。学习。下一步应该更容易。简单更好。