Python

Kuidas luua Pythoni rakendust CockroachDB ja PonyORM abil

Kuidas luua Pythoni rakendust CockroachDB ja PonyORM abil

Selles juhendis tutvustame teile Pythoni abil CockroachDB ja PonyORM. Alustame arutades, mis need tehnoloogiad on, ja seejärel arutame nende toimimist.

Enne kui hakkame CockroachDB ja PonyORM-iga Pythoni rakendust looma, mõistame, mis need tehnoloogiad on:

Mis on prussakasDB

CockroachDB on väga skaleeritav, avatud lähtekoodiga, hajutatud SQL-i andmebaas, mis kasutab tehingulisi ja järjepidevaid võtmeväärtuste salvestusi.

CockroachDB on väga tõhus meetod andmete püsivuse ja rikke korral taastamise tagamiseks. Riist- ja tarkvara rikete korral saab see andmeid säilitada, kasutades andmete järjepidevat replikatsiooni ja automaatset remonti. SQL API abil võimaldab CockroachDB teil SQL-päringute abil andmeid pärida, struktureerida ja manipuleerida.

SQL API abil pakub CockroachDB arendajatele lihtsat üleminekut, kuna nad saavad samad tuttavad mõisted. Kuna sellel on enamiku programmeerimiskeelte jaoks juba olemas SQL-draiverid, muutub selle kasutamine mugavamaks.

Parema mõistmise huvides soovitame tutvuda CockroachDB dokumentatsiooniga.

https: // linkfy.to / cockroachDocs

Mis on PonyORM

PonyORM on täiustatud Pythoni objektide-relatsioonide kaardistaja. Ehkki on ka teisi Pythoni ORM-e, nagu Django ja SQLAlchemy, on PonyORM kasulik, kuna sellel on sellised funktsioonid nagu liitvõtmete tugi, automaatne päringu optimeerimine ning intuitiivne ja otsene päringusüntaks.

ORM on lihtsalt tööriist, mis võimaldab teil töötada eelistatud programmeerimiskeelt kasutades SQL-i andmebaasiga. See annab arendajatele võimaluse töötada andmebaasis olevate andmetega objektide kujul; seega saate andmetega töötamiseks kasutada oma keeles OOP-d.

PonyORMi teeki kasutades saame kasutada Pythoni keelt CockroachDB-s olevate andmetega relatsiooniandmebaasi objektide kujul töötamiseks.

Viitamiseks võite kasutada PonyORM-i dokumentatsiooni. Siin on link:

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

Kuidas installida CockroachDB Linuxi

CockroachDB installimiseks Linuxi süsteemidesse järgige selles juhendis toodud juhiseid ja sõltuvalt teie süsteemi konfiguratsioonist peab teil olema juurjuurdepääs või sudo kasutaja.

Esimene samm on tagada oma süsteemi ajakohasus ja seejärel installida vajalikud sõltuvused. Selle jaoks on käsk:

sudo apt-get update && sudo apt-get upgrade
sudo apt-get install glibc libncurses tzdata -y

Järgmine samm on brauseri CockroachDB allalaadimine wgeti abil, nagu on näidatud allolevas käsus:

wget -qO- https: // kahendfailid.prussakas.com / prussakas-v20.2.3.linux-amd64.tgz

Kui olete binaarse faili alla laadinud, eraldage fail.

tõrv -xvf prussakas-v20.2.3.linux-amd64.tgz

CockroachDB käskude käivitamiseks mis tahes kestast lisage binaarne teele:

cp -i prussakas-v20.2.3. linux-amd64 / prussakas / usr / bin /

Kopeerige vajalikud teegid:

mkdir -p / usr / lib / prussakas
cp -i prussakas-v20.2.3.linux-amd64 / lib / libgeos.nii / usr / lib / prussakas /
cp -i prussakas-v20.2.3.linux-amd64 / lib / libgeos_c.nii / usr / lib / prussakas /

Kui olete lõpetanud, veenduge, et prussakas oleks installitud:

mis prussakas
/ usr / bin / prussakas

Käivitage ajutine mälusisene klaster, kasutades käsku:

prussakate demo

Klastri sees saate kehtivate SQL-päringute sisestamiseks käivitada interaktiivse SQL-i kest:

NÄITA LABELID;

Kuidas installida PonyORM

PonyORM-i installimiseks peaks teil olema installitud ja töötav Pythoni versioon. Võite kasutada nii Python 2 (surnud) kui ka Python 3.

Pipi abil installige Pony:

pip3 paigalda poni

Pony installimise kontrollimiseks avage Pythoni tõlk ja sisestage kood.

>>> ponilt. orm import *

Kuna kasutame PonyORM-i koos CockroachDB-ga, peame installima vajaliku draiveri. Sel juhul peame installima psycopg2. Vajaliku draiveri installimiseks kasutage käsku pip.

pip install psycopg2-binaarne

Kontrollige, kas teil on Psycopg interaktiivse pythoni seansi abil installitud, ja sisestage käsk:

impordi psycopg

Kui kõik on installitud, saate edasi liikuda ja asuda tööle CochroachDB ja PonyORM-iga:

Kuidas luua Pythoni rakendust prussakate ja PonyORM-iga

Püütonirakenduse loomiseks käivitage käsu abil interaktiivse SQL-i kest.

prussakas SQL

Järgmine samm on luua andmebaas ja kasutaja, kellega suhelda, mida saate teha käsu abil:

LOE KASUTAJA, KUI EI OLE admin;
LOO andmebaasi andmebaas;

Lisage administraatorile vajalikud õigused käsuga:

ANTAKE KÕIK DATABASE ajaveebis administraatorile;
\ q;

Nüüd rakenduse jaotise kohta:

Allpool olev kood kasutab PonyORM-i blogi andmebaasiga suhtlemiseks ja Pythoni objektide ja meetodite kaardistamiseks SQL-i andmebaasi.

Allolev kood teeb järgmised toimingud:

ponist.orm import *
impordi kuupäev
andmebaas = andmebaas ()
db_params = dict (pakkuja = 'prussakas', kasutaja = 'admin',
host = 'localhost', port = 26257, andmebaas = 'blog')
klassi Kasutaja (andmebaas.Üksus):
first_name = nõutav (unicode)
blogs = Määra ("Blogi")
klassi ajaveeb (andmebaas.Üksus):
kasutajanimi = kohustuslik (kasutaja)
pealkiri = Nõutav (unicode)
publish_date = Nõutav (kuupäeva aeg.kuupäev)
category = Nõutav (unicode)
set_sql_debug (tõene)
andmebaasi.köide (** db_params)
andmebaasi.genereeri_kaardistamine (loo_tabelid = tõene)
@db_session
def create_blog ():
kasutaja = kasutaja (eesnimi = u "Administraator")
ajaveeb = Blogi (kasutajanimi = kasutaja,
title = u "Tere maailm",
publish_date = kuupäev.kuupäev (2021, 1, 1),
kategooria = u "Mustand")
ajaveebid = [

"kasutaja": kasutaja,
"title": "Tere maailm 1",
"publish_date": kuupäev.kuupäev (2021, 1, 2),
"kategooria": "mustand"
,

"kasutaja": kasutaja,
"title": "Tere maailm 2",
"publish_date": kuupäev.kuupäev (2021, 1, 3),
"kategooria": "mustand"
,

"kasutaja": kasutaja,
"title": "Tere maailm 3",
"publish_date": kuupäev.kuupäev (2021,1,4),
"kategooria": "mustand"

]
ajaveebi jaoks ajaveebides:
b_ = Blogi (** ajaveeb)
kui __nimi__ == "__main__":
create_blog ()
b_ = Kasutaja ("Administraator")

Kui olete rakenduse käivitanud, peaksite nägema allpool näidatuga sarnast väljundit:

Hangi uus ühendus
ÜHENDUSE VABASTAMINE
SAA KOHALIKU BASINIGA ÜHENDUS
LÜLITAKE AUTOMAATSÜSTEEMILE
LOE TABEL "kasutaja" (
"ID" SEERIA PÕHIVÕTI,
"eesnimi" TEKST EI NULL
)
LOE TABEL "ajaveeb" (
„ID” SEERIA PÕHIVÕTI,
“Kasutajanimi” INT8 EI TÄIS,
“Pealkiri” TEKST EI TULE,
“Publish_date” KUUPÄEV EI TÜHIS,
“Kategooria” TEKST EI TULE
)
LOO INDEKS "idx_blog__kasutajanimi" SEES "ajaveeb" ("kasutajanimi")
ALTER TABEL "ajaveeb" ADD CONSTRAINT "fk_blog__kasutajanimi" FOREIGN KEY ("kasutajanimi") VIIDAD "user" ("id") KASETI KUSTUTAMISEL
VALI "ajaveeb"."id", "blog"."kasutajanimi", "ajaveeb"."pealkiri", "ajaveeb"."publish_date", "blog"."kategooria"
FROM "blogist" "blogist"
KUS 0 = 1
SELECT "kasutaja"."id", "kasutaja"."eesnimi"
FROM "kasutaja" "kasutaja"
KUS 0 = 1

Järeldus

Ülalolevat rakendust kasutades lõime lihtsa ajaveebirakenduse, mis loob kasutaja ja määrab ajaveebid kasutajanimele. Seejärel lisasime andmed andmebaasi, millele saame SQL-päringute abil päringu teha. Kuigi rakendus on lihtne, illustreerib see, kuidas saame Pythoni rakenduse loomiseks kasutada CockroachDB ja PonyORM.

Parimad Linuxi mängukonsooli emulaatorid
Selles artiklis loetletakse Linuxi jaoks saadaval olev populaarne mängukonsooli emuleerimise tarkvara. Emuleerimine on tarkvara ühilduvuse kiht, mis j...
Parimad mängude jaoks mõeldud Linuxi distrod 2021. aastal
Linuxi operatsioonisüsteem on oma algsest, lihtsast, serveripõhisest välimusest kaugele jõudnud. See operatsioonisüsteem on viimastel aastatel tohutul...
Kuidas Linuxis oma mänguseanssi jäädvustada ja voogesitada
Varem peeti mängude mängimist ainult hobiks, kuid aja jooksul kasvas mängutööstus tehnoloogia ja mängijate arvu osas tohutult. Mängupublik on veebimän...