Saya tahu bahwa Anda dapat meminta ActiveRecord untuk membuat daftar tabel di konsol menggunakan:
ActiveRecord::Base.connection.tables
Apakah ada perintah yang akan mencantumkan kolom dalam tabel tertentu?
Saya tahu bahwa Anda dapat meminta ActiveRecord untuk membuat daftar tabel di konsol menggunakan:
ActiveRecord::Base.connection.tables
Apakah ada perintah yang akan mencantumkan kolom dalam tabel tertentu?
Ini akan mencantumkan nama_kolom dari tabel
Model.column_names
e.g. User.column_names
Model.columns
untuk mendapatkan info lebih lanjut tentang kolom termasuk data konfigurasi database.Model.columns
menyediakan semua informasi untuk tabel melalui ActiveRecord. Yang terpenting bagi saya itu adalah satu-satunya cara dan termudah untuk mendapatkan keyakinan tentang apa sebenarnya kunci utama saya di tingkat database.Ini mendapatkan kolom, bukan hanya nama kolom dan menggunakan ActiveRecord :: Base :: Connection, jadi tidak ada model yang diperlukan. Berguna untuk dengan cepat mengeluarkan struktur db.
Contoh keluaran: http://screencast.com/t/EsNlvJEqM
sumber
primary
atribut dengan benar (semua kolom memilikiprimary=nil
). Ini diatur dengan benar denganModel.columns
metode yang disarankan oleh srt32.Menggunakan rel tiga Anda cukup mengetik nama model:
Di rel empat, Anda perlu membuat koneksi terlebih dahulu:
sumber
Jika Anda merasa nyaman dengan perintah SQL, Anda dapat masuk ke folder aplikasi Anda dan menjalankannya
rails db
, yang merupakan bentuk singkat darirails dbconsole
. Ini akan masuk ke shell database Anda, apakah itu sqlite atau mysql.Kemudian, Anda dapat membuat kueri kolom tabel menggunakan perintah sql seperti:
sumber
describe your_table;
, tidak sempurna tetapi berfungsiAnda dapat menjalankan
rails dbconsole
alat baris perintah untuk membuka konsol sqlite. Kemudian ketik.tables
untuk mendaftar semua tabel dan.fullschema
untuk mendapatkan daftar semua tabel dengan nama dan tipe kolom.sumber
Untuk daftar kolom dalam tabel saya biasanya pergi dengan ini:
Model.column_names.sort
.i.e. Orders.column_names.sort
Menyortir nama kolom memudahkan untuk menemukan apa yang Anda cari.
Untuk informasi lebih lanjut tentang masing-masing kolom menggunakan ini:
Model.columns.map{|column| [column.name, column.sql_type]}.to_h
.Ini akan memberikan hash yang bagus. sebagai contoh:
sumber
melengkapi informasi yang berguna ini, misalnya menggunakan rails console o rails dbconsole:
Mahasiswa adalah Model saya, menggunakan konsol rel:
Opsi lain menggunakan SQLite melalui Rails:
Terakhir untuk informasi lebih lanjut.
Semoga ini membantu!
sumber
Untuk format yang lebih ringkas, dan lebih sedikit mengetik:
sumber