Piton

Kako izraditi aplikaciju Python s CockroachDB i PonyORM

Kako izraditi aplikaciju Python s CockroachDB i PonyORM

U ovom ćemo vam vodiču predstaviti CockroachDB i PonyORM koristeći Python. Počet ćemo s raspravom o tome koje su to tehnologije, a zatim s njihovim radom.

Prije nego što započnemo s izradom Python aplikacije s CockroachDB i PonyORM, shvatimo koje su to tehnologije:

Što je CockroachDB

CockroachDB je visoko skalabilna, distribuirana SQL baza podataka otvorenog koda koja koristi transakcijske i dosljedne pohrane ključ / vrijednost.

CockroachDB vrlo je učinkovit kao metoda za osiguravanje postojanosti podataka i oporavka u slučaju kvara. U slučaju kvara hardvera i softvera, može sačuvati podatke korištenjem jakih dosljednih replikacija svojih podataka i automatskim popravcima. Korištenjem SQL API-ja CockroachDB omogućuje vam postavljanje upita, strukturiranje i upravljanje podacima pomoću SQL upita.

Koristeći SQL API, CockroachDB pruža programerima lak prijelaz jer dobivaju iste poznate koncepte. Budući da već ima postojeće SQL upravljačke programe za većinu programskih jezika, njegovo korištenje postaje ugodnije.

Preporučujemo vam da provjerite dokumentaciju CockroachDB radi boljeg razumijevanja.

https: // linkfy.do / žoharDocs

Što je PonyORM

PonyORM je napredni Python objektno-relacijski mapper. Iako postoje i drugi Python ORM kao što su Django i SQLAlchemy, PonyORM je povoljan jer ima značajke poput podrške za kompozitne ključeve, automatske optimizacije upita i intuitivne i jednostavne sintakse upita.

ORM je jednostavno alat koji vam omogućuje rad s SQL bazom podataka pomoću željenog programskog jezika. Daje programerima mogućnost rada s podacima unutar baze podataka u obliku objekata; stoga možete koristiti OOP za svoj jezik za rad s podacima.

Korištenjem knjižnice PonyORM možemo koristiti jezik Python za rad s podacima u CockroachDB u obliku objekata relacijske baze podataka.

Za referencu možete koristiti dokumentaciju PonyORM. Evo poveznice:

https: // docs.ponyorm.org / toc.html

Kako instalirati CockroachDB na Linux

Da biste instalirali CockroachDB na Linux sustave, slijedite korake u ovom vodiču i, ovisno o konfiguraciji vašeg sustava, morat ćete imati root pristup ili biti sudo korisnik.

Prvi korak je osigurati da je vaš sustav ažuran, a zatim instalirajte potrebne ovisnosti. Evo naredbe za to:

sudo apt-get update && sudo apt-get nadogradnja
sudo apt-get instaliraj glibc libncurses tzdata -y

Sljedeći je korak preuzimanje binarnog programa CockroachDB pomoću wgeta, kao što je prikazano u naredbi ispod:

wget -qO- https: // binarne datoteke.žohardb.com / žohar-v20.2.3.linux-amd64.tgz

Nakon što preuzmete binarni datoteku, izvadite datoteku.

katran -xvf žohar-v20.2.3.linux-amd64.tgz

Da biste pokrenuli naredbe CockroachDB iz bilo koje ljuske, dodajte binarnu datoteku na svoj put:

cp -i žohar-v20.2.3. linux-amd64 / žohar / usr / bin /

Kopirajte potrebne knjižnice:

mkdir -p / usr / lib / žohar
cp -i žohar-v20.2.3.linux-amd64 / lib / libgeos.tako / usr / lib / žohar /
cp -i žohar-v20.2.3.linux-amd64 / lib / libgeos_c.tako / usr / lib / žohar /

Kada završite, potvrdite da ste instalirali žohara:

koji žohar
/ usr / bin / žohar

Pokrenite privremeni klaster u memoriji pomoću naredbe:

demo žohara

Unutar klastera možete pokrenuti interaktivnu SQL ljusku za unos valjanih SQL upita:

PRIKAŽI STOLOVE;

Kako instalirati PonyORM

Da biste instalirali PonyORM, trebali biste imati instaliranu i pokrenutu verziju Pythona. Možete koristiti i Python 2 (mrtav) ili Python 3.

Pomoću pipa instalirajte Pony:

pip3 instaliraj ponija

Da biste testirali imate li instaliran Pony, otvorite Python interpreter i unesite kôd.

>>> od ponija. uvoz orma *

Budući da ćemo PonyORM koristiti s CockroachDB, moramo instalirati potreban upravljački program. U ovom slučaju moramo instalirati psycopg2. Upotrijebite naredbu pip za instaliranje potrebnog pokretačkog programa.

pip instalirati psycopg2-binarni

Provjerite je li instaliran Psycopg pomoću interaktivne sesije python i unesite naredbu:

uvoz psycopg

Nakon što sve instalirate, možete krenuti dalje i početi raditi s CochroachDB i PonyORM:

Kako izraditi Python aplikaciju s CockroachDB i PonyORM

Da biste izgradili python aplikaciju, započnite pokretanjem interaktivne SQL ljuske pomoću naredbe.

žohar SQL

Sljedeći je korak stvaranje baze podataka i korisnika za interakciju, što možete učiniti pomoću naredbe:

STVORI KORISNIKA AKO NE POSTOJI admin;
STVARI BAZU PODATAKA blog;

Dodajte potrebne privilegije administratoru pomoću naredbe:

DODATI SVE NA BAZI BAZA PODATAKA administratoru;
\ q;

Sada za odjeljak aplikacije:

Kôd u nastavku koristi PonyORM za interakciju s bazom podataka bloga i mapiranje Python objekata i metoda u SQL bazu podataka.

Kôd u nastavku izvodi sljedeće operacije:

od ponija.uvoz orma *
uvoz datum i vrijeme
baza podataka = Baza podataka ()
db_params = dict (provider = 'žohar', user = 'admin',
host = 'localhost', port = 26257, baza podataka = 'blog')
razred Korisnik (baza podataka.Entitet):
first_name = Obavezno (unicode)
blogs = Set ("Blog")
razred Blog (baza podataka.Entitet):
username = Obavezno (Korisnik)
naslov = Obavezno (unicode)
objaviti_date = Obavezno (datum i vrijeme.datum)
kategorija = Obavezno (unicode)
set_sql_debug (True)
baza podataka.vezati (** db_params)
baza podataka.generiraj_mapiranje (create_tables = True)
@db_session
def create_blog ():
user = Korisnik (first_name = u "Admin")
blog = Blog (korisničko ime = korisnik,
title = u "Pozdrav svijetu",
datum objavljivanja = datum i vrijeme.datum (2021, 1, 1),
kategorija = u "Nacrt")
blogovi = [

"korisnik": korisnik,
"title": "Hello world 1",
"objaviti_datum": datum i vrijeme.datum (2021, 1, 2),
"category": "Skica"
,

"korisnik": korisnik,
"title": "Hello world 2",
"objaviti_datum": datum i vrijeme.datum (2021, 1, 3),
"category": "Skica"
,

"korisnik": korisnik,
"title": "Hello world 3",
"objaviti_datum": datum i vrijeme.datum (2021,1,4),
"category": "Skica"

]
za blog u blogovima:
b_ = Blog (** blog)
ako je __name__ == "__glavno__":
create_blog ()
b_ = Korisnik ("Administrator")

Jednom kada pokrenete aplikaciju, trebali biste vidjeti izlaz sličan onome prikazanom u nastavku:

DOĐITE DO NOVE VEZE
VEZA ZA OSLOBOĐENJE
OSTAVITE VEZU SA LOKALNIM BAZENOM
PREKIDITE NA NAČIN AUTOCOMITITA
IZRADI TABELU "korisnik" (
"id" SERIJSKI PRIMARNI KLJUČ,
"first_name" TEKST NIJE NULL
)
IZRADI TABELU „blog“ (
“Id” SERIJSKI PRIMARNI KLJUČ,
“Korisničko ime” INT8 NIJE NULL,
“Naslov” TEKST NIJE NULL,
“Objavi_datum” DATUM NIJE NULL,
„Kategorija“ TEKST NIJE NULJAN
)
IZRADI INDEKS "idx_blog__username" ON "blog" ("korisničko ime")
ALTER TABELA "blog" DODAJ OGRANIČENJE "fk_blog__username" STRANI KLJUČ ("korisničko ime") REFERENCE "korisnik" ("id") NA BRISANJE KASKADE
ODABERITE "blog"."id", "blog"."korisničko ime", "blog"."naslov", "blog"."datum objavljivanja", "blog"."kategorija"
IZ "bloga" "bloga"
GDJE 0 = 1
ODABERITE "korisnik"."id", "korisnik"."ime"
OD "korisnik" "korisnik"
GDJE 0 = 1

Zaključak

Pomoću gornje aplikacije stvorili smo jednostavnu blog aplikaciju koja kreira korisnika i dodjeljuje blogove korisničkom imenu. Zatim smo dodali podatke u bazu podataka, koje možemo postavljati upite pomoću SQL upita. Iako je aplikacija jednostavna, ilustrira kako pomoću CockroachDB i PonyORM možemo stvoriti Python aplikaciju.

Kontrolirajte i upravljajte kretanjem miša između više monitora u sustavu Windows 10
Dvostruki zaslon upravitelja miša omogućuje vam kontrolu i konfiguriranje kretanja miša između više monitora, usporavajući njegovo kretanje blizu gran...
WinMouse vam omogućuje prilagodbu i poboljšanje kretanja pokazivača miša na Windows računalu
Ako želite poboljšati zadane funkcije pokazivača miša, upotrijebite besplatni program WinMouse. Dodaje više značajki koje će vam pomoći da na najbolji...
Lijevi gumb miša ne radi u sustavu Windows 10
Ako s prijenosnim računalom ili stolnim računalom koristite namjenski miš, ali lijevi gumb miša ne radi u sustavu Windows 10/8/7 iz nekog razloga evo ...