transaksi
Transaksi database didukung karena pengkodean / database yang digunakan untuk mengeluarkan kueri asinkron.
Penggunaan dasar
Untuk menggunakan transaksi, gunakan Database.transaksi sebagaimanajer konteks asinkron:
1 2 3 4 5 | |
!!!Perhatikan bahwa itu harus database yang sama yang digunakan dalam objek konfigurasi ormar\ _ model.
Untuk menghindari melewati instance database dalam kode Anda, Anda dapat mengekstrak instance dari setiap model. Database yang disediakan selama ormar. Deklarasi model tersedia melalui konfigurasi ormar\ _ dan dapat diakses dari kelas dan instance.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | |
Anda juga dapat menggunakan .transaksi () sebagai dekorator fungsi untuk setiap fungsi asinkron:
1 2 3 | |
Blok transaksi dikelola sebagai negara tugas-lokal. Transaksi bersarang didukung penuh dan diimplementasikan menggunakan basis data savepoint.
komitmen / kemunduran manual
Untuk API perdagangan tingkat bawah, Anda dapat memicunya secara manual
1 2 3 4 5 6 7 8 | |
tes
Transaksi juga berguna selama pengujian ketika Anda dapat menerapkan rollback paksa dan tidak perlu membersihkan data setelah setiap pengujian.
1 2 3 4 5 6 | |