Jika Anda membutuhkan atau menginginkan fitur khusus database yang tidak dimengerti oleh ActiveRecord maka Anda harus beralih ke db/structure.sql untuk melacak skema Anda. db/structure.sql cukup banyak merupakan dump mentah dari skema Anda yang dibuat menggunakan alat asli database sehingga akan berisi pemicu, PERIKSA batasan, indeks pada hasil fungsi, dan yang lainnya.
Beralih itu mudah:
- Perbarui
config/application.rbAnda berisiconfig.active_record.schema_format = :sql. - Lakukan
rake db:structure:dumpuntuk mendapatkandb/structure.sqlawal . - Hapus
db/schema.rbdari pohon direktori dan kontrol revisi Anda. - Tambahkan
db/structure.sqlke kontrol revisi. - Sesuaikan kebiasaan menyapu Anda:
- Gunakan
db:structure:dumpbukannyadb:schema:dump - Gunakan
db:structure:loadbukannyadb:schema:load
- Gunakan
Segala sesuatu yang lain harus bekerja seperti biasa (tentu saja dengan asumsi bahwa Anda waras dan menggunakan PostgreSQL untuk pengembangan, pengujian, dan produksi).
Dengan perubahan ini, pemicu Anda akan dilacak di db/structure.sql dan membuat ulang database tidak akan menghilangkannya.