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_columnsaran 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_attributetetap 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_profilesmigrasi saya :
t.boolean :show_attribute, :default => true
Bisakah seseorang memberi tahu saya apa yang saya lakukan salah di sini?
upmetode dalam migrasi, yang merupakan kelas baru yang akan dihasilkan dalam db / migrasi /. (downMetode harus ditulis untuk membatalkan apa yangupdilakukan.) Buat perubahan itu, lalurake db:migrate.