Prečo je pre moderných vývojárov bezhlavý CMS

Aplikácie založené na obsahu vyžadujú backend, ktorý kombinuje flexibilitu, výkon a plnú kontrolu nad dátovou architektúrou. Directus sa stal standout bezhlavým CMS, pretože zabalí výkonnú, reálnu SQL databázu do čistej, rozšíriteľnej API vrstvy bez zavedenia pevných modelov obsahu. Na rozdiel od platforiem, ktoré vás nútia do vopred definovanej schémy, Directus pracuje s akoukoľvek SQL databázou a poskytuje vám úplné vlastníctvo nad vašimi dátami. Táto flexibilita, v kombinácii s intuitívnou admin palubnou doskou a robustnou SDK, robí Directus ideálnym pre projekty od jednoduchého blogu až po multikanálový digitálny zážitok. Platforma je open-source, plne samoobslušný a ponúka riadenú cloudovú možnosť pre tímy, ktoré radšej neriadia infraštruktúru.

Directus

Väčšina tradičných CMS platforiem skrýva databázu za vrstvami abstrakcie, pristupuje k obsahu ako k pomysleniu. Directus prevráti tento model: zaobchádza s vašou relačnej databázy ako s jediným zdrojom pravdy. Navrhujete svoju schému pomocou štandardných SQL tabuliek, stĺpcov a vzťahov a Directus automaticky generuje RESTful alebo grafQL API z tejto schémy. Tento dátový-prvý prístup znamená, že nikdy nemusíte bojovať proti CMS, aby ste reprezentovali váš obsah presne tak, ako to vyžaduje vaša aplikácia. To tiež znamená, že vaše dáta zostávajú prenosné môžete exportovať, sťahoval, alebo pripojiť akýkoľvek iný nástroj, ktorý hovorí SQL.

Priama práca s SQL

Directus beží na vrchole MySQL, PostgreSQL, SQLite, alebo iné SQL databázy. Môžete využiť plnú silu rodených SQLindexes, pripojí, pohľady, spúšť, a uložené postupy bez akejkoľvek medziprekladateľskej vrstvy, ktoré by mohli degradovať výkon alebo zaviesť neočakávané správanie. Keď spustíte surový dotaz v Directuse, hovoríte priamo do vašej databázy. To je obzvlášť cenné pre tímy, ktoré už majú dobre definovaný dátový model alebo sú migrujúce z odkazového systému, kde schéma musí zostať nezmenená. Pretože Directus neukladá ORM, vyhnete sa otázke režijné a typ-mapovanie problémy spoločné s inými bezhlavými CMS platformami.

Vzťahy bez šelmy

Vzťahy v Directuse sú riešené prostredníctvom skutočných cudzích kľúčov v databáze. Vytvorenie jedného-to-mnohého alebo mnoho-to-mnohého odkaz je rovnako jednoduché ako definovanie príslušných stĺpcov; Directus objavuje vzťah automaticky. Systém tiež podporuje vnorené vzťahy do otázok prostredníctvom API, čo vám umožní získať hlboko súvisiaci obsah v jednej žiadosti. Táto vzťahová sila znamená, že môžete modelovať zložité štruktúry , ako katalóg výrobkov s kategóriami, variantmi a pridružené médiá, bez toho, aby ste sa uchýlili k nemotorným poľným prácam. Directus tiež podporuje mnoho-to-akékoľvek vzťahy prostredníctvom križovatkovej tabuľky, dáva vám flexibilitu prepojiť akékoľvek dva subjekty bez vopred definovaných obmedzení.

Generovanie API: automatické, rýchle a štandardy-na základe

Keď je vaša databáza schéma na mieste, Directus generuje ako RESTful API (s plnou CRUD operácie) a doplnkové GrafQL API. Obe dodržiavajú priemyselné štandardy, takže je jednoduché konzumovať z akéhokoľvek klienta , mobilný, alebo server-strana. Auto-generovaný API rešpektuje vaše databázové obmedzenia a povolenia, poskytuje poľné validácie, vynútiteľnosť dát typu a vzťah integrity z poľa. Žiadne ďalšie konfiguračné súbory sú potrebné

OSVEDČENÉ ciele, ktorým môžete dôverovať

Každá tabuľka vo vašej databáze sa stáva REST koncovým bodom. Môžete filtrovať, triediť, paginovať, a súhrnné výsledky pomocou parametrov dotazu. Directus tiež podporuje hlboké relačné filtrovanie, čo znamená, že môžete požiadať o články, kde autor je meno

GrafQL pre komplexné otázky

Ak potrebujete získať viac zdrojov s minimálnymi požiadavkami, koncový ukazovateľ grafuQL vám umožní presne definovať tvar odpovede. Directus automaticky generuje graf QL schému, ktorá odráža štruktúru vašej databázy, vrátane všetkých vzťahov. Frontend tímy môžu presne vyhľadávať polia, ktoré potrebujú, eliminovať preťahovanie a pod-fetching. GrafQL ihrisko zabudované v paneli Directus admin robí experimentovanie rýchly a bezpečný. Ak sa chcete dozvedieť viac o GrafQL, navštívte []oficiálnu grafQL dokumentáciu. Directus tiež podporuje pretrvávajúce otázky, ktoré umožňujú predregistrovať komplexné operácie grafuQL pre rýchlejšie vykonávanie a lepšiu kontrolu vyrovnávacej pamäte.

Admin Dashboard: Navrhnuté pre editorov a vývojárov

Directus poskytuje čisté, biele-label admin rozhranie, ktoré je plne prispôsobiteľné. Editori zobraziť vizuálny dáta-zadávanie systému podporujúce bohatý text, nahrávanie obrázkov, správu súborov a vlastné rozloženie. Vývojári môžu skryť pokročilé databázové polia, premenovať stĺpce pre zobrazovacie účely a pridať pravidlá validácie all bez dotyku s predným koncom aplikačného kódu. prístrojová doska je postavená ako aplikácia na jednotnej strane (SPA) a môže byť hostovaná oddelene od API, dáva vám úplnú kontrolu nad redakčným zážitkom. Rozhranie tiež podporuje tmavý režim, klávesové skratky a responzívny dizajn, ktorý funguje na tabletoch a telefónoch.

Kontrola prístupu na základe roly

Bezpečnosť je riešená prostredníctvom systému zrnitého povolenia. Môžete definovať role a priradiť práva na úrovni tabuľky, poľa a dokonca aj položky. Napríklad editor môže vytvárať a aktualizovať články, ale nie ich vymazať, a prispievateľ môže vidieť len svoje vlastné návrhy. Všetky povolenia sú vynútené na vrstve API, takže žiadny klient nemôže obísť pravidlá zamýšľaného prístupu. To robí Directus vhodný pre aplikácie, kde je citlivosť obsahu problémom, ako sú interné dokumentačné portály alebo publikačné systémy orientované na klienta. Môžete tiež nastaviť povolenia na stiahnutie súborov a prístup verejnosti k konkrétnym koncovým ukazovateľom, čo vám dáva jemne zrnité ovládanie nad tými, ktorí vidia čo.

Vlastné usporiadanie a rozšírenie rozhrania

Za predvolenou tabuľkou a zobrazením formulárov Directus podporuje vlastné rozloženie, ako sú tabule, kalendáre a mapy Kanban. Tieto sú postavené ako rozšírenie a môžu byť nainštalované z trhu alebo vyvinuté in-house. Napríklad, aplikácia pre riadenie projektu môže použiť rozloženie Kanban zobraziť úlohy podľa stavu, zatiaľ čo stránky udalostí môže použiť kalendár pohľad na vizualizáciu rozvrhnutie. Vlastné rozhrania môžu nahradiť predvolené vstupné polia (ako dropdown alebo textarea) so špecializovanými komponentmi, ako je napríklad snímač farieb alebo Google Maps volič polohy.

Extenzivita a directus ekosystém

Žiadny CMS nemôže predvídať každý prípad použitia, čo je dôvod, prečo bol Directus postavený s rozšíriteľnosťou na mysli. Môžete pridať vlastné koncové body, vlastné háky, ktoré oheň na databázových udalostí, a vlastné panely palubnej dosky. Systém tiež podporuje adaptéry na ukladanie súborov, čo vám umožní uložiť nahrané aktíva na lokálnom disku, Amazon S3, Google Cloud Storage, alebo akýkoľvek iný poskytovateľ, ktorý podporuje štandardné rozhranie súborového systému. Pre zoznam podporovaných pamäťových adaptérov pozri []Directive súborové dokumenty[. Navyše, môžete integrovať Directus s externými službami pomocou webhooks (obe odchádza (na oznámenie systému tretej strany) a prichádzajúce (prijímať údaje z externých zdrojov).

Háčiky na automatizáciu

Napríklad, môžete generovať slimák z názvu, poslať oznámenie do kanála Slack, keď je zverejnený nový článok, alebo synchronizovať obsah na externý vyhľadávací index, ako []Elasticsearch[. Háčiky sú napísané v JavaScripte a môžu byť tak jednoduché alebo zložité, ako je potrebné, dať vám silu automatizovať pracovné postupy bez toho, aby opustili prostredie Directus. Môžu byť tiež použité na overenie údajov, transformáciu vstupov alebo spustenie vedľajších účinkov, ako je odosielanie e-mailov. Vzhľadom k tomu, že háčiky beží server-strany, môžu bezpečne prístup k premenným prostredia a externé API.

Vlastné koncové body a Middleware

Ak vaša aplikácia vyžaduje API koncové body, ktoré presahujú štandardné operácie CRUD, môžete vytvoriť vlastné koncové body pomocou Directus

Výkonnosť a miernosť

Pretože Directus je v podstate tenký obal okolo relačnej databázy, jeho výkonnostný profil odráža to, čo je základom SQL nastavenia. Caching je možné realizovať na úrovni API pomocou reverzných proxies ako Varnish alebo Nginx, a grafQL koncový bod podporuje pretrvávajúce otázky pre optimálne cache. Pre vysoko-dopravné aplikácie, môžete mieriť Directus API horizontálne spustením viacerých prípadov za načítací vyrovnávač, zatiaľ čo databázové vrstvy stupnice nezávisle. Výsledkom je obsah backend, ktorý dokáže zvládnuť milióny vstupov a tisíce súbežných žiadostí bez špecializovanej infraštruktúry. Directus zahŕňa tiež zabudovaný-in kaching pre admin palubnej dosky a API odpovede, konfigurovateľné prostredníctvom premenných prostredia.

Optimalizácia úrovne databázy

Vzhľadom k tomu, Directus vystavuje natívne SQL, môžete optimalizovať svoju databázu nezávisle , rozdeľovanie veľké tabuľky, alebo pomocou zhmotnených pohľadov pre komplexné agregácie. API vrstva nezavádza významné režijné náklady; každá žiadosť je preložená do jedného alebo viacerých SQL dotazov bez ďalšieho abstrakcie. Pre čítanie-ťažké pracovné zaťaženie môžete implementovať repliky a konfigurovať Directus na použitie samostatných pripojení pre čítanie a písanie. Pre write-heavy scenáre, môžete ladiť spojenie združovania a používať synchrónne háčiky, ktoré neblokujú odpoveď.

Kedy si vybrať smer cez iné bezhlavé CMS možnosti

Ak si váš projekt vyžaduje komplexný relaxačný model, prísne dodržiavanie pôvodnej schémy alebo zavedenie na premenu za firewall, Directus je silný kandidát. Je to tiež skvelá voľba pre tímy, ktoré sa chcú vyhnúť uzamknutiu predajcu, pretože vaše dáta žijú v štandardnej databáze SQL, môžete kedykoľvek prepnúť z Directusu bez bolestivej migrácie. Na porovnanie platformy ako Contentful ponúka jednoduchosť nastavenia s vopred definovaným modelom obsahu, ale obmedzujú vašu schopnosť používať prirodzené databázové funkcie a často si účtovať poplatky za hovor API. Directus, ktorý je otvorený-zdroj, vám poskytuje neobmedzenú škálovateľnosť pre voľný, ak ho budete hostovať sami. Ďalšou populárnou možnosťou je napríklad Stripi, zatiaľ čo Strapgi ponúka aj samohosting, jeho údaje sa ukladajú v databáze SQL, ale s väčšou mienenou štruktúrou.

Praktický príklad: Budovanie hudobného vzdelávania Blog s Directus

Ak chcete vidieť Directus v akcii, zvážiť web ako trombón technika blog, ktorý potrebuje spravovať články, profily autora, video vložené a sťahovacie hudby. S Directus, by ste začali definovaním tabuľky SQL: [[, , , . Po vytvorení tabuľky, Directus okamžite generuje API a admin rozhranie. Editori môžu písať články s bohatým textovým editorom, pripojiť PDF súbory, a vzťahujú každý článok na jedného alebo viacerých autorov. Predný diel (postavený React, Vue, alebo Svelte) sťahuje dáta cez REST alebo grafQL a vykresľuje blog. Ako blog rastie, môžete pridať vlastné háčiky generovať Tagy pre SEO, automaticky prevešovať obrázky a rad sociálnych médií posty. Žiadne ďalšie CMS zásuvysky alebo stredného ware sú potrebné. Rovnaké by mohlo byť prispôsobené pre podcast, e-report, e-report scharder

Rozšírenie hudobného blogu o vlastné koncové body

Predpokladajme, že chcete poskytnúť

Začíname s directusom

Môžete začať s Directusom dvoma spôsobmi: self-hosted alebo prostredníctvom Directus Cloud. Samohosting je jednoduchý: klonovať úložisko, nastaviť databázu a spustiť Dockerov obraz. Oficiálna dokumentácia poskytuje detailný prehliadač. Pre tímy, ktoré uprednostňujú riadené riešenie, Directus Cloud spracováva infraštruktúru, škálovanie a zálohovanie. V oboch prípadoch sú základné funkcie identické a zachovávate si úplný prístup k vašim údajom. Navštívte []Directus dokumentation[], aby ste začali.

Po nainštalovaní je prvým krokom pripojenie databázy a preskúmanie automatického API. Nemusíte písať žiadne konfiguračné súbory alebo definovať typy obsahu v UI prvom chápanom bode Directus v databáze SQL, a to okamžite stáva čitateľné a zapisovateľné prostredníctvom API. Tento nulový-konfiguračný prístup je to, čo nastaví Directus od iných bezhlavých CMS produktov a robí to obľúbené medzi vývojármi, ktorí hodnotia účinnosť a kontrolu. Môžete začať s jednoduchým tabuľka, pridať vzťahy postupne, a rozšíriť sa pomocou háčikov a vlastných koncových bodov, ako sa vyvíja váš projekt.

Záver

Directus ponúka vzácnu kombináciu flexibility, výkonu apriateľskej prístupnosti. Pri spracovaní vašej SQL databázy ako základu eliminuje abstrakcie, ktoré spomaľujú iné riešenia CMS. Autogenerované API, detailné povolenia arozšíriteľný hákový systém vám poskytnú nástroje na vybudovanie všetkého zmalej marketingovej stránky na podnikovú obsahovú platformu. Pre každého, kto si cení plné vlastníctvo dát, relačnú schopnosť modelovania aschopnosť prispôsobiť každú vrstvu stohu, je Directus presvedčivou voľbou, ktorá vyniká vpreplnenej bezhlavej krajine CMS.

Ak ste pripravení prejsť za prísne obmedzenia CMS a chcete systém, ktorý sa prispôsobí vášmu dátovému modelu