logo

Dodatni tipovi blokova (EBT) - Novo iskustvo rada sa Layout Builder-om❗

Dodatni tipovi blokova (EBT) – stilizovani, prilagodljivi tipovi blokova: slajdšouvi, kartice sa tabovima, kartice, akordeoni i mnogi drugi. Ugrađena podešavanja za pozadinu, DOM Box, javascript dodatke. Iskusite budućnost kreiranja rasporeda već danas.

Demo EBT moduli Preuzmite EBT module

❗Dodatni tipovi pasusa (EPT) – Novo iskustvo rada sa pasusima

Dodatni tipovi pasusa (EPT) – analogni skup modula zasnovan na pasusima.

Demo EPT moduli Preuzmite EPT module

Scroll

JSON:API naspram osnovnog REST modula

21/05/2025, by Ivan

TL;DR

Izaberite REST ako imate podatke koji nisu entiteti i želite da ih izložite. U svim drugim slučajevima, izaberite JSON:API.

Malo detaljnije:

  • Core REST modul omogućava bilo šta (bilo koji format, bilo koju logiku, bilo koji HTTP metod) i ekstremnu konfigurabilnost. Moćan ali kompleksan, pa zato relativno lomljiv.
  • JSON:API je fokusiran na izlaganje najveće snage Drupala (entiteti / modelovanje podataka) na koherentan način. Jednostavan ali dovoljno snažan za većinu slučajeva.

Matrica funkcionalnosti

Poređenje JSON:API i REST-a na osnovu glavnih funkcionalnosti.
Funkcionalnost JSON:API REST Napomena
Entiteti izloženi kao resursi ✔️ ✔️ REST: potrebno je konfigurisati za svaki tip entiteta. JSON:API: sve izloženo podrazumevano. Oboje poštuju pristup entitetima.
Prikazivanje custom podataka kao resursa   ✔️ Pisanje custom @RestResource plugina. JSON:API podržava samo entitete.
Dohvatanje pojedinačnih resursa ✔️ ✔️  
Dohvatanje lista resursa ✔️ delimično

REST: potrebno je konfigurisati View i podesiti "REST export" prikaz.

Paginacija listi resursa ✔️ Potreban dodatni modul kao Pager Serializer. REST: nije podržano! REST export View-ovi vraćaju sve resurse.
Filtriranje listi resursa ✔️ delimično

REST: samo ako kreirate exposed filter za svako polje i svaki operator

Sortiranje resursa ✔️    
Uključivanje/ugnježđavanje (includes/embedding) ✔️ Samo u HAL+JSON  
Bez nepotrebnog omotavanja vrednosti polja ✔️   HAL normalizacija i podrazumevana normalizacija (svi formati) izlažu PHP strukture, što otežava rad klijentima. JSON:API pojednostavljuje normalizaciju polja sa jednom vrednošću.
Mogućnost izostavljanja polja koja klijentu nisu potrebna ✔️    
Konzistentni URL-ovi ✔️    
Klijent može da otkrije dostupne tipove resursa ✔️    
Drupal-agnostična struktura odgovora ✔️   REST: HAL normalizacija u teoriji nema Drupal specifičnosti, ali u praksi ih ima.
Klijentske biblioteke ✔️    
Ekstenzibilna specifikacija WIP    
Nema potrebe za konfiguracijom ✔️   REST: svaki @RestResource plugin mora biti ručno konfigurisani za izlaganje, formate, autentifikaciju i HTTP metode. JSON:API: svi entiteti su automatski izloženi, poštuju se pravila pristupa, svi instalirani autentifikacioni provajderi su dozvoljeni automatski.

Više informacija

Pogledajte razloge za dodavanje JSON:API modula u Drupal core, kao i arhitektonsku dokumentaciju modula.

Tekst preuzet sa Drupal Dokumentacije.