Saya baru mengenal Rails sehingga proyek saya saat ini dalam keadaan aneh.
Salah satu hal pertama yang saya hasilkan adalah model "Film". Saya kemudian mulai mendefinisikannya lebih detail, menambahkan beberapa metode, dll.
Saya sekarang menyadari bahwa saya seharusnya membuatnya dengan rails generate scaffold
menghubungkan hal-hal seperti perutean, pandangan, pengontrol, dll.
Saya mencoba membuat perancah tetapi saya mendapatkan kesalahan dengan mengatakan file migrasi dengan nama yang sama sudah ada.
Apa cara terbaik bagi saya untuk membuat scaffolding untuk "Film" saya sekarang? (menggunakan rel 3)
Jawaban:
TL; DR :
rails g scaffold_controller <name>
Meskipun Anda sudah memiliki model, Anda masih dapat membuat file pengontrol dan migrasi yang diperlukan dengan menggunakan
rails generate
opsi. Jika Anda menjalankan,rails generate -h
Anda dapat melihat semua opsi yang tersedia untuk Anda.Jika Anda ingin membuat scaffold controller untuk model Anda, lihat
scaffold_controller
. Untuk kejelasan, inilah uraiannya:Untuk membuat sumber daya Anda, Anda akan menggunakan
resource
generator, dan untuk membuat migrasi, Anda juga dapat melihatmigration
generator (lihat, ada pola untuk semua kegilaan ini). Ini memberikan opsi untuk membuat file yang hilang untuk membangun sumber daya. Atau Anda dapat menjalankanrails generate scaffold
dengan--skip
opsi untuk melewati file apa pun yang ada :)Saya sarankan meluangkan waktu untuk melihat opsi di dalam generator. Mereka sesuatu yang saya rasa tidak didokumentasikan dengan sangat baik dalam buku-buku dan semacamnya, tetapi mereka sangat berguna.
sumber
rails generate scaffold_controller MyModel
tidak menghasilkan lapisan tampilan tetapi tidak termasuk atribut model (kolom tabel) dan Anda harus menambahkannya dengan tangan. Adakah yang tahu tentang perbaikan untuk ini? Saya di Rails 3.2.8.generate scaffold
jika Anda memiliki model tetapi Anda ingin controller perancah dan atribut baru ditambahkan ke model yang Anda inginkanscaffold_generator
diikutimigration
dengan bidang yang Anda ubahJawaban yang bagus oleh
Lee Jarvis
, ini hanya perintah misalnya; kami sudah memiliki model yang sudah ada bernama Pengguna:sumber
Untuk yang memulai aplikasi rel dengan basis data yang ada ada permata keren yang dipanggil
schema_to_scaffold
untuk membuat skrip perancah. itu output:dari
schema.rb
nama kami Anda Anda yang sudah diubah.schema.rb.
Periksasumber
Di Rails 5 , Anda masih bisa berlari
untuk membuat semua file perancah yang hilang atau
untuk membuat pengontrol dan hanya melihat.
Untuk penjelasan yang lebih baik, periksa scaffold rails
sumber
Perintah ini harus melakukan trik:
sumber
Anda dapat menggunakan
scaffold_controller
dan ingat untuk melewatiattributes
model, atau perancah akan dihasilkan tanpa atribut.Perintah ini akan menghasilkan file berikut:
sumber