Krajta

Jak vytvořit aplikaci Python s CockroachDB a PonyORM

Jak vytvořit aplikaci Python s CockroachDB a PonyORM

V této příručce vám představíme CockroachDB a PonyORM pomocí Pythonu. Začneme tím, že probereme, o jaké technologie jde, a poté probereme, jak fungují.

Než začneme s tvorbou aplikace v Pythonu s CockroachDB a PonyORM, pochopme, o jaké technologie jde:

Co je CockroachDB

CockroachDB je vysoce škálovatelná open-source distribuovaná databáze SQL, která využívá transakční a konzistentní úložiště klíč-hodnota.

CockroachDB je velmi efektivní metoda pro zajištění perzistence a obnovy dat v případě poruchy. V případě selhání hardwaru a softwaru může uchovat data pomocí silně konzistentních replikací svých dat a automatických oprav. Pomocí rozhraní SQL API vám CockroachDB umožňuje dotazovat, strukturovat a manipulovat s daty pomocí dotazů SQL.

Pomocí rozhraní SQL API poskytuje CockroachDB vývojářům snadný přechod, protože získávají stejné známé koncepty. Protože již má pro většinu programovacích jazyků existující ovladače SQL, jeho používání se stává pohodlnějším.

Doporučujeme vám, abyste si pro lepší porozumění prohlédli dokumentaci CockroachDB.

https: // linkfy.do / cockroachDocs

Co je PonyORM

PonyORM je pokročilý Python Object-Relational Mapper. I když existují další Python ORM, jako jsou Django a SQLAlchemy, PonyORM je výhodný, protože má funkce, jako je podpora složených klíčů, automatická optimalizace dotazů a intuitivní a přímá syntaxe dotazu.

ORM je jednoduše nástroj, který vám umožní pracovat s databází SQL pomocí preferovaného programovacího jazyka. Poskytuje vývojářům schopnost pracovat s daty v databázi ve formě objektů; proto můžete použít OOP pro svůj jazyk pro práci s daty.

Pomocí knihovny PonyORM můžeme používat jazyk Python pro práci s daty v CockroachDB ve formě objektů relační databáze.

Pro referenci můžete použít dokumentaci PonyORM. Zde je odkaz:

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

Jak nainstalovat CockroachDB na Linuxu

Chcete-li nainstalovat CockroachDB na systémy Linux, postupujte podle pokynů v této příručce a v závislosti na konfiguraci vašeho systému budete muset mít přístup root nebo být uživatelem sudo.

Prvním krokem je zajistit, aby byl váš systém aktuální, a poté nainstalovat požadované závislosti. Zde je příkaz:

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

Dalším krokem je stažení binárního souboru CockroachDB pomocí wget, jak ukazuje následující příkaz:

wget -qO- https: // binární soubory.šváb.com / šváb-v20.2.3.linux-amd64.tgz

Jakmile máte binární soubor stažený, rozbalte soubor.

tar -xvf šváb-v20.2.3.linux-amd64.tgz

Chcete-li spustit příkazy CockroachDB z libovolného prostředí, přidejte binární soubor do své cesty:

cp -i šváb-v20.2.3. linux-amd64 / šváb / usr / bin /

Zkopírujte požadované knihovny:

mkdir -p / usr / lib / šváb
cp -i šváb-v20.2.3.linux-amd64 / lib / libgeos.takže / usr / lib / šváb /
cp -i šváb-v20.2.3.linux-amd64 / lib / libgeos_c.takže / usr / lib / šváb /

Po dokončení potvrďte, že máte nainstalován Šváb:

který šváb
/ usr / bin / šváb

Spusťte dočasný klastr v paměti pomocí příkazu:

demo švábů

Uvnitř klastru můžete spustit interaktivní prostředí SQL a zadat platné dotazy SQL:

ZOBRAZIT TABULKY;

Jak nainstalovat PonyORM

Chcete-li nainstalovat PonyORM, měli byste mít nainstalovanou a spuštěnou verzi Pythonu. Můžete použít Python 2 (mrtvý) nebo Python 3.

Pomocí pip nainstalujte Pony:

pip3 install pony

Chcete-li otestovat, zda máte nainstalovaný Pony, otevřete překladač Pythonu a zadejte kód.

>>> od poníka. orm import *

Protože budeme používat PonyORM s CockroachDB, musíme nainstalovat požadovaný ovladač. V tomto případě musíme nainstalovat psycopg2. Pomocí příkazu pip nainstalujte potřebný ovladač.

pip nainstalujte psycopg2-binary

Zkontrolujte, zda máte Psycopg nainstalovaný pomocí interaktivní relace pythonu a zadejte příkaz:

import psycopg

Jakmile máte vše nainstalované, můžete pokračovat a začít pracovat s CochroachDB a PonyORM:

Jak vytvořit Pythonovou aplikaci s CockroachDB a PonyORM

Chcete-li vytvořit aplikaci v pythonu, začněte spuštěním interaktivního prostředí SQL pomocí příkazu.

šváb SQL

Dalším krokem je vytvoření databáze a uživatele, se kterým můžete pracovat, což můžete provést pomocí příkazu:

VYTVOŘIT UŽIVATELE, POKUD NEEXISTUJE admin;
Blog CREATE DATABASE;

Přidejte potřebná oprávnění uživateli správce pomocí příkazu:

UDĚLIT VŠECHNY DATABÁZE blog administrátorovi;
\ q;

Nyní pro sekci aplikace:

Níže uvedený kód používá PonyORM k interakci s databází blogů a mapování objektů a metod Pythonu na databázi SQL.

Níže uvedený kód provádí následující operace:

od poníka.orm import *
import datetime
databáze = databáze ()
db_params = dict (poskytovatel = 'šváb', uživatel = 'admin',
host = 'localhost', port = 26257, database = 'blog')
třída Uživatel (databáze.Subjekt):
first_name = Povinné (unicode)
blogy = Set ("Blog")
třída Blog (databáze.Subjekt):
uživatelské jméno = požadováno (uživatel)
title = Povinné (unicode)
publish_date = Povinné (datetime.datum)
category = Povinné (unicode)
set_sql_debug (True)
databáze.svázat (** db_params)
databáze.generate_mapping (create_tables = True)
@db_session
def create_blog ():
user = User (first_name = u "Admin")
blog = Blog (uživatelské jméno = uživatel,
title = u „Ahoj světe“,
publish_date = datetime.datum (2021, 1, 1),
kategorie = u „Koncept“)
blogy = [

"uživatel": uživatel,
"title": "Hello world 1",
"publish_date": datetime.datum (2021, 1, 2),
"category": "Koncept"
,

"uživatel": uživatel,
"title": "Hello world 2",
"publish_date": datetime.datum (2021, 1, 3),
"category": "Koncept"
,

"uživatel": uživatel,
"title": "Hello world 3",
"publish_date": datetime.datum (2021,1,4),
"category": "Koncept"

]
pro blog v blogech:
b_ = Blog (** blog)
pokud __name__ == "__main__":
create_blog ()
b_ = Uživatel („Správce“)

Po spuštění aplikace byste měli vidět výstup podobný tomu, který je uveden níže:

ZÍSKEJTE NOVÉ PŘIPOJENÍ
PŘIPOJENÍ K UVOLNĚNÍ
ZÍSKEJTE PŘIPOJENÍ Z MÍSTNÍHO BAZÉNU
PŘEPNĚTE NA REŽIM AUTOMOBILU
VYTVOŘIT TABULKU „uživatel“ (
"id" SÉRIOVÝ ZÁKLADNÍ KLÍČ,
"first_name" TEXT NENÍ NULL
)
VYTVOŘIT TABULKU „blog“ (
„Id“ SÉRIOVÝ ZÁKLADNÍ KLÍČ,
„Uživatelské jméno“ INT8 NENÍ NULL,
„Název“ TEXT NENÍ NULL,
„Publish_date“ DATE NOT NULL,
„Kategorie“ TEXT NENÍ NULL
)
CREATE INDEX "idx_blog__username" ON "blog" ("uživatelské jméno")
ALTER TABLE "blog" ADD CONSTRAINT "fk_blog__username" FOREIGN KEY ("username") REFERENCES "user" ("id") ON DELETE CASCADE
VYBERTE „blog“."id", "blog"."uživatelské jméno", "blog"."title", "blog"."publish_date", "blog"."kategorie"
Z „blogu“ „blogu“
KDE 0 = 1
VYBERTE „uživatele“."id", "uživatel"."jméno"
FROM „uživatel“ „uživatel“
KDE 0 = 1

Závěr

Pomocí výše uvedené aplikace jsme vytvořili jednoduchou blogovou aplikaci, která vytvoří uživatele a přiřadí blogy uživatelskému jménu. Poté jsme přidali data do databáze, na kterou můžeme dotazovat pomocí dotazů SQL. Ačkoli je aplikace jednoduchá, ukazuje, jak můžeme k vytvoření aplikace v Pythonu použít CockroachDB a PonyORM.

Jak změnit levé a pravé tlačítko myši na počítači se systémem Windows 10
Je úplnou normou, že všechna zařízení počítačových myší jsou ergonomicky navržena pro praváky. K dispozici jsou však myší zařízení, která jsou speciál...
Emulace kliknutí myší vznášením pomocí myši Clickless Mouse ve Windows 10
Používání myši nebo klávesnice ve špatném držení těla nadměrného používání může mít za následek mnoho zdravotních problémů, včetně napětí, syndromu ka...
Přidejte gesta myši do Windows 10 pomocí těchto bezplatných nástrojů
V posledních letech se počítače a operační systémy značně vyvinuly. Bývaly doby, kdy uživatelé museli procházet správci souborů pomocí příkazů. Stejně...