Saya ingin menghapus catatan tertentu. Seperti
delete from table_name where id = 1;
Bagaimana saya bisa melakukan ini dalam django model
?
python
django
django-models
pengguna426795
sumber
sumber
Jawaban:
Ada beberapa cara:
Untuk menghapusnya secara langsung:
Untuk menghapusnya dari instance:
sumber
pre_delete
ataupost_delete
sinyal.delete()
untuk memeriksa apa yang Anda hapus. Ini mengembalikan tuple dengan jumlah objek yang dihapus dan kamus dengan detail tentang jenis yang dihapus, misalnya(1, {'yourapp.SomeModel': 1})
.ini akan memunculkan pengecualian jika objek dengan kunci utama yang ditentukan tidak ada karena pada awalnya ia mencoba untuk mengambil objek yang ditentukan.
ini tidak akan menimbulkan pengecualian jika objek dengan kunci utama yang ditentukan tidak ada dan secara langsung menghasilkan kueri
sumber
MyModel.object.filter(pk=1).delete()
. Seharusnya "benda".jika Anda ingin menghapus satu contoh maka tulis kodenya
jika Anda ingin menghapus semua instance maka tulis kodenya
sumber
Jika Anda ingin menghapus satu item
Jika Anda ingin menghapus semua item di Wishlist misalnya
sumber
Wolph memberikan kode fokus jawaban yang baik. Biarkan saya tempelkan dokumen resmi di sini, untuk referensi orang.
sumber