Saya telah melihat beberapa pertanyaan (yaitu yang ini ) di sini di SO tentang menambahkan nilai boolean default ke kolom yang ada. Jadi saya mencoba change_column
saran tetapi saya tidak boleh melakukannya dengan benar.
Saya mencoba:
$ change_column :profiles, :show_attribute, :boolean, :default => true
Yang kembali -bash: change_column: command not found
Saya kemudian berlari:
$ rails g change_column :profiles, :show_attribute, :boolean, :default => true
...dan
$ rails change_column :profiles, :show_attribute, :boolean, :default => true
Kemudian berlari rake db:migrate
, tetapi nilai untuk :show_attribute
tetap nil
. Dalam pertanyaan yang saya referensikan di atas tertulis di PostgreSQL Anda perlu memperbaruinya secara manual. Karena saya menggunakan PostgreSQL, saya menambahkan yang berikut ini dalam create_profiles
migrasi saya :
t.boolean :show_attribute, :default => true
Bisakah seseorang memberi tahu saya apa yang saya lakukan salah di sini?
up
metode dalam migrasi, yang merupakan kelas baru yang akan dihasilkan dalam db / migrasi /. (down
Metode harus ditulis untuk membatalkan apa yangup
dilakukan.) Buat perubahan itu, lalurake db:migrate
.