Apakah ada cara untuk 'membatalkan' efek perintah perancah di Rails?
ruby-on-rails
ruby
scaffolding
Daniel
sumber
sumber
Jawaban:
Pertama , jika Anda sudah menjalankan migrasi yang dihasilkan oleh
scaffold
perintah, Anda harus melakukan rollback terlebih dahulu.Anda dapat membuat perancah menggunakan:
(atau serupa), dan Anda dapat menghancurkan / membatalkannya menggunakan
Itu akan menghapus semua file yang dibuat oleh
generate
, tetapi tidak ada perubahan tambahan yang mungkin Anda buat secara manual.sumber
rake db:rollback
sebelum Anda menghancurkan perancah Anda. Ini akan menghancurkan / menjatuhkan tabel jika tidak ada migrasi lain kecuali migrasi perancah sebelumnya.git status
dan / ataugit diff
, untuk melihat apakah perintah pemusnahan melewatkan sesuatu.Rishav Rastogi benar, dan dengan rel 3.0 atau lebih tinggi:
sumber
rake db:rollback
sebelumrails destroy scaffold
atau jika itu bukan yang terakhir Anda rake,db:migrate:down VERSION=20080906120000
Anda dapat menemukan nomor sebelum namanya di db / migrateAnda dapat membatalkan apa pun yang Anda lakukan
Oleh
Misalnya ini berlaku generator untuk migrasi, perancah, model ... dll
sumber
Jika Anda hanya ingin melihat file yang akan dibuat oleh generator, Anda dapat melewatkan opsi generator --pretend atau -p.
sumber
Cara terbaik adalah:
Untuk perancah:
sumber
Juga, pastikan Anda membatalkan migrasi yang Anda lakukan dengan rollback atau ke versi tertentu.
sumber
untuk pertama kalinya, Anda dapat memeriksa migrasi database Anda jika Anda telah menghasilkan perancah. Anda harus menghancurkan mereka untuk membersihkan basis data Anda
kemudian
sumber
Untuk menghasilkan perancah:
Untuk mengembalikan perancah:
sumber
Rails menghancurkan nama
sumber
Untuk menghasilkan perancah di rel -
Untuk membatalkan perancah di rel -
sumber
rails g
danrails d
.Anda perlu mengembalikan migrasi juga setelah menghancurkan perancah juga
sumber
Jadi, Proses yang harus Anda ikuti untuk membatalkan perancah di rel 4. Jalankan Perintah seperti di bawah ini:
rails d scaffold FooBar
rake db:rollback
jika you_had_run_rake db:migrate
setelah membuat perancah di atas?Itu dia!
Bersulang!
sumber
Rekomendasikan rollback Pertama, ketik Terminal Anda.
Tambahkan perancah perusak ('d' singkatan 'perusak')
Nikmati kode Anda.
sumber
Gunakan ini
sumber
Pertama, Anda harus melakukan rake db: rollback untuk menghancurkan tabel
jika Anda sudah menjalankan rake db: bermigrasi dan kemudian Anda dapat menjalankan
rails d Model scaffold
sumber
Anda perlu mengembalikan migrasi terlebih dahulu dengan melakukan rake db: rollback jika ada Dan kemudian hancurkan perancahnya
sumber
Ya,
scaffold
itu sendiri dan semua hal yang menggabungkannya.The
destroy
perintah adalah kebalikan darigenerate
dan akan membatalkan satu. Cukup berikan nama dengan cara yang samagenerate
dan akan dihapus dari proyek Anda:sumber
Untuk menghasilkan perancah:
Untuk mengembalikan perancah ini:
Jika Anda telah menjalankan migrasi untuk itu, kembalikan saja
sumber
penyedia solusi lain berdasarkan git
memulai proyek baru
inisialisasi git
buat perancah
kembalikan perancah
sumber
Pilihan
Jika kamu melakukan
Kemudian balikkan kembali menggunakan
sumber
Saat kami membuat perancah, file berikut akan dibuat:
Perintah:
rails generate scaffold Game
File yang dibuat:
Jika kami telah menjalankan migrasi setelah ini, maka kami harus mengembalikan migrasi terlebih dahulu karena penghapusan scaffold juga akan menghapus file migrasi dan kami tidak akan dapat mengembalikan migrasi itu.
Jika kami telah menjalankan migrasi:
dan setelah ini kita dapat menghapus scaffold dengan aman oleh commad ini.
Perintah ini akan menghapus semua file yang dibuat oleh perancah di proyek Anda.
sumber
Setiap kali Anda berlari
rails g
, Anda dapat membalikkannya dengan menjalankanrails d
(menghancurkan) untuk menghapus apa yang telah Anda hasilkan. Jika Anda sudah menjalankanrake db:migrate
, Anda harus menjalankanrake db:rollback
sebelum menghancurkan :)sumber
Kasus 1: Jika Anda hanya menjalankan perintah ini untuk menghasilkan perancah -
tetapi sampai sekarang Anda tidak menjalankan perintah apa pun untuk migrasi seperti
maka Anda harus menjalankan hanya perintah ini seperti -
Kasus 2: Jika Anda sudah menjalankan (Scaffold dan Migration) dengan perintah di bawah ini seperti -
Maka Anda harus menjalankan perintah migrasi rollback pertama kemudian hancurkan scaffold seperti di bawah ini -
Jadi Dengan cara ini, kita bisa membatalkan perancah. Kita juga bisa menggunakan d untuk menghancurkan dan g untuk menghasilkan sebagai jalan pintas.
sumber
untuk menghasilkan dan
untuk menghapus
sumber