Rumah pembangunan bahagian belakang Tutorial Python Penjelasan terperinci tentang Pony ORM, rangka kerja ORM dalam Python

Penjelasan terperinci tentang Pony ORM, rangka kerja ORM dalam Python

Jun 10, 2023 pm 09:30 PM
python rangka kerja orm pony orm

Python ialah bahasa pengaturcaraan peringkat tinggi yang digunakan secara meluas dalam pembangunan web, pengkomputeran saintifik, pemprosesan data dan bidang lain. Dalam pembangunan Python, rangka kerja ORM (Object-Relational Mapping) merupakan komponen penting Ia boleh mewujudkan jambatan yang koheren antara pangkalan data hubungan dan bahasa pengaturcaraan berorientasikan objek, dan memudahkan kerja pembangunan pengaturcara Python.

Di antara banyak rangka kerja Python ORM, Pony ORM ialah alat pemetaan objek-hubungan yang ringan Ia menggunakan sintaks semula jadi dan mudah bahasa Python dan menyediakan fungsi kaya yang boleh memetakan objek Python dengan cepat untuk Melaksanakan kegigihan dalam pangkalan data hubungan. .

  1. Pemasangan

Pertama, kita perlu memasangnya melalui alat pengurusan pakej pip.

pip install pony

  1. Quick Start

2.1 Sambung ke pangkalan data

Pertama, kita perlu menyambung ke pangkalan data, Pony ORM menyokong pelbagai Pelbagai pangkalan data hubungan, termasuk MySQL, PostgreSQL, SQLite, Oracle, MS SQL Server, dll. Mari kita ambil SQLite sebagai contoh.

dari import pony.orm *

db = Pangkalan Data()

db.bind(provider='sqlite', nama fail='database.sqlite', create_db=True )

Perhatikan bahawa sebelum menyambung ke pangkalan data, anda perlu mentakrifkan tika Pangkalan Data, dan kemudian menentukan jenis pangkalan data dan nama pangkalan data melalui kaedah bind(). Jika pangkalan data tidak wujud, anda boleh menggunakan pilihan create_db=True untuk mencipta pangkalan data secara automatik.

2.2 Tentukan kelas entiti

Seterusnya, kita perlu mentakrifkan kelas Python dan menukarnya kepada kelas entiti melalui penghias db.Entity(). Atribut dalam kelas entiti dipetakan ke lajur jadual dalam pangkalan data dan kejadian kelas entiti sepadan dengan baris dalam jadual.

kelas Pelanggan(db.Entiti):

name = Required(str)
age = Required(int)
address = Optional(str)
Salin selepas log masuk

Dalam kod di atas, kami mentakrifkan kelas entiti Pelanggan dan mentakrifkan tiga atribut: nama, umur dan alamat. Antaranya, nama dan umur adalah atribut yang diperlukan (Diperlukan), dan alamat adalah atribut pilihan (Pilihan).

2.3 Cipta jadual

Selepas mencipta kelas entiti, kita perlu mencipta struktur jadual yang sepadan dalam pangkalan data. Ini boleh dilakukan melalui kaedah db.generate_mapping().

db.generate_mapping(create_tables=True)

Selepas langkah di atas, kami telah berjaya menyambung ke pangkalan data, menentukan kelas entiti dan mencipta jadual yang sepadan dalam pangkalan data.

  1. Tambah, Padam, Ubah Suai dan Semak

3.1 Memasukkan data

Memasukkan data ialah operasi biasa. Melalui Pony ORM, kami boleh memasukkan data dengan mudah.

dengan db_session:

c1 = Customer(name='Tom', age=20)
c2 = Customer(name='Jerry', age=25, address='New York')
flush()
Salin selepas log masuk

Dalam kod di atas, kami menggunakan kata kunci with db_session untuk mengisytiharkan sesi, dan kemudian mencipta dua kejadian Pelanggan c1 dan c2 dengan membuat instantiate kelas entiti Pelanggan dan Berikan ia kepada pembolehubah. Seterusnya, kami memanggil kaedah flush() untuk memasukkan contoh c1 dan c2 ke dalam pangkalan data.

3.2 Data pertanyaan

Data pertanyaan ialah salah satu fungsi rangka kerja ORM yang paling biasa digunakan. Melalui ORM Pony, kita boleh menggunakan ungkapan pertanyaan atau objek ORM untuk menanyakan data.

Ungkapan pertanyaan:

select(c for c in Customer if c.age > 20)

Dalam kod di atas, kami menggunakan fungsi select() untuk menentukan yang dikehendaki Kelas entiti untuk disoal. Di sini kami menentukan untuk menanyakan rekod dalam jadual Pelanggan yang berumur lebih daripada 20 tahun. Akhir sekali, kami menggunakan konteks dengan db_session yang mengandungi fungsi pilih() untuk melaksanakan operasi pertanyaan.

Objek ORM:

dengan db_session:

customers = Customer.select(lambda c:c.age > 20)
for c in customers:
    print(c.name, c.age, c.address)
Salin selepas log masuk

Dalam kod di atas, kami menggunakan kata kunci with db_session untuk mengisytiharkan sesi dan menggunakan Customer.select() untuk menanyakan Jadual pelanggan Rekod di mana kumpulan umur melebihi 20 tahun. Hasil pertanyaan diwakili sebagai objek ORM dan kita boleh mengakses sifat dan kaedahnya sama seperti objek Python. Akhir sekali, kami menggunakan gelung for untuk mengeluarkan hasil pertanyaan.

3.3 Kemas kini data

Kendalian mengemas kini data adalah sangat mudah Kita hanya perlu menanyakan rekod yang perlu dikemas kini dahulu, kemudian mengubah suai nilai atribut yang sepadan, dan akhirnya memanggil siram. () kaedah untuk menyimpan data yang diubah suai.

dengan db_session:

customer = Customer.get(name='Tom')
customer.address = 'Beijing'
flush()
Salin selepas log masuk

Dalam kod di atas, kami menggunakan penyataan Customer.get() untuk menanyakan rekod pelanggan bernama Tom, dan kemudian mengubah suai alamatnya ke Beijing. Akhir sekali, kami menyimpan data yang dikemas kini ke pangkalan data dengan memanggil kaedah flush().

3.4 Memadam data

Memadam data juga sangat mudah Kita hanya perlu menanyakan rekod yang perlu dipadamkan dahulu, dan kemudian memanggil kaedah delete().

dengan db_session:

customer = Customer.get(name='Tom')
customer.delete()
Salin selepas log masuk

Dalam kod di atas, kami menggunakan penyataan Customer.get() untuk menanyakan rekod pelanggan bernama Tom, dan kemudian memanggil kaedah delete() untuk memadamkan pelanggan rekod daripada pangkalan data Rekod.

  1. Ringkasan

Pony ORM ialah rangka kerja ORM Python yang ringkas, mudah digunakan, kaya ciri yang boleh memetakan objek Python dengan pantas ke pangkalan data hubungan untuk perubahan kegigihan. Apabila menggunakan ORM Pony, kita perlu terlebih dahulu menyambung ke pangkalan data, kemudian menentukan kelas entiti, mencipta jadual, dan akhirnya melaksanakan operasi seperti penambahan, pemadaman, pengubahsuaian dan pertanyaan melalui ungkapan pertanyaan atau objek ORM. Untuk pemula, Pony ORM ialah rangka kerja ORM yang sangat mesra dengan kos pembelajaran yang rendah, membolehkan anda bermula dengan cepat.

Atas ialah kandungan terperinci Penjelasan terperinci tentang Pony ORM, rangka kerja ORM dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
2 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Repo: Cara menghidupkan semula rakan sepasukan
1 bulan yang lalu By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Cara mendapatkan biji gergasi
4 minggu yang lalu By 尊渡假赌尊渡假赌尊渡假赌

Alat panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Adakah terdapat aplikasi mudah alih yang boleh menukar XML ke PDF? Adakah terdapat aplikasi mudah alih yang boleh menukar XML ke PDF? Apr 02, 2025 pm 08:54 PM

Permohonan yang menukarkan XML terus ke PDF tidak dapat dijumpai kerana mereka adalah dua format yang berbeza. XML digunakan untuk menyimpan data, manakala PDF digunakan untuk memaparkan dokumen. Untuk melengkapkan transformasi, anda boleh menggunakan bahasa pengaturcaraan dan perpustakaan seperti Python dan ReportLab untuk menghuraikan data XML dan menghasilkan dokumen PDF.

Cara Membuka Format XML Cara Membuka Format XML Apr 02, 2025 pm 09:00 PM

Gunakan kebanyakan editor teks untuk membuka fail XML; Jika anda memerlukan paparan pokok yang lebih intuitif, anda boleh menggunakan editor XML, seperti editor XML oksigen atau XMLSPY; Jika anda memproses data XML dalam program, anda perlu menggunakan bahasa pengaturcaraan (seperti Python) dan perpustakaan XML (seperti XML.Etree.ElementTree) untuk menghuraikan.

Adakah terdapat XML percuma untuk alat PDF untuk telefon bimbit? Adakah terdapat XML percuma untuk alat PDF untuk telefon bimbit? Apr 02, 2025 pm 09:12 PM

Tidak ada XML percuma yang mudah dan langsung ke alat PDF di mudah alih. Proses visualisasi data yang diperlukan melibatkan pemahaman dan rendering data yang kompleks, dan kebanyakan alat yang dipanggil "percuma" di pasaran mempunyai pengalaman yang buruk. Adalah disyorkan untuk menggunakan alat sampingan komputer atau menggunakan perkhidmatan awan, atau membangunkan aplikasi sendiri untuk mendapatkan kesan penukaran yang lebih dipercayai.

Adakah pengubahsuaian XML memerlukan pengaturcaraan? Adakah pengubahsuaian XML memerlukan pengaturcaraan? Apr 02, 2025 pm 06:51 PM

Mengubah kandungan XML memerlukan pengaturcaraan, kerana ia memerlukan penemuan tepat nod sasaran untuk menambah, memadam, mengubah suai dan menyemak. Bahasa pengaturcaraan mempunyai perpustakaan yang sepadan untuk memproses XML dan menyediakan API untuk melaksanakan operasi yang selamat, cekap dan terkawal seperti pangkalan data operasi.

Alat pemformatan XML yang disyorkan Alat pemformatan XML yang disyorkan Apr 02, 2025 pm 09:03 PM

Alat pemformatan XML boleh menaip kod mengikut peraturan untuk meningkatkan kebolehbacaan dan pemahaman. Apabila memilih alat, perhatikan keupayaan penyesuaian, pengendalian keadaan khas, prestasi dan kemudahan penggunaan. Jenis alat yang biasa digunakan termasuk alat dalam talian, pemalam IDE, dan alat baris arahan.

Cara Mencantikkan Format XML Cara Mencantikkan Format XML Apr 02, 2025 pm 09:57 PM

Pengindahan XML pada dasarnya meningkatkan kebolehbacaannya, termasuk lekukan yang munasabah, rehat garis dan organisasi tag. Prinsipnya adalah untuk melintasi pokok XML, tambah lekukan mengikut tahap, dan mengendalikan tag dan tag kosong yang mengandungi teks. Perpustakaan XML.Etree.ElementTree Python menyediakan fungsi Pretty_XML yang mudah yang dapat melaksanakan proses pengindahan di atas.

Adakah kelajuan penukaran cepat apabila menukar XML ke PDF pada telefon bimbit? Adakah kelajuan penukaran cepat apabila menukar XML ke PDF pada telefon bimbit? Apr 02, 2025 pm 10:09 PM

Kelajuan XML mudah alih ke PDF bergantung kepada faktor -faktor berikut: kerumitan struktur XML. Kaedah Penukaran Konfigurasi Perkakasan Mudah Alih (Perpustakaan, Algoritma) Kaedah Pengoptimuman Kualiti Kod (Pilih perpustakaan yang cekap, mengoptimumkan algoritma, data cache, dan menggunakan pelbagai threading). Secara keseluruhannya, tidak ada jawapan mutlak dan ia perlu dioptimumkan mengikut keadaan tertentu.

Bagaimana cara menukar fail XML ke PDF di telefon anda? Bagaimana cara menukar fail XML ke PDF di telefon anda? Apr 02, 2025 pm 10:12 PM

Tidak mustahil untuk menyelesaikan penukaran XML ke PDF secara langsung di telefon anda dengan satu aplikasi. Ia perlu menggunakan perkhidmatan awan, yang boleh dicapai melalui dua langkah: 1. Tukar XML ke PDF di awan, 2. Akses atau muat turun fail PDF yang ditukar pada telefon bimbit.

See all articles