Vodniki

Kaj je CRUD? Ustvari, preberi, posodobi, izbriši pojasnjeno

CRUD pomeni ustvari, beri, posodobi in izbriši – štiri osnovne stvari, ki jih aplikacija počne s shranjenimi podatki. Dodajanje nove stranke je ustvari, ogled seznama strank je beri, spreminjanje njene telefonske številke je posodobi, njeno odstranitev pa izbriši. Večina poslovnih aplikacij – CRM-ji, sistemi za rezervacije, sledilniki zalog, skrbniške plošče – je v glavnem CRUD s pravili in dobro postavitvijo nad tem.

Zakaj je to pomembno, ko gradite z AI

CRUD je besedni zaklad, ki spremeni nejasno idejo aplikacije v natančno zahtevo. »Aplikacija za upravljanje dobaviteljev« pusti AI, da ugiba. »Ustvari, prikaži, uredi in izbriši dobavitelje, s temi polji« pove natančno, katere zaslone, operacije v bazi in strežniške poti naj zgradi.

Daje tudi kontrolni seznam za testiranje. Za vsako vrsto zapisa v aplikaciji lahko postavite štiri vprašanja: ali lahko dodam enega, ali jih lahko vidim, ali lahko enega spremenim in ali lahko enega odstranim – in ali to lahko naredijo samo pravi ljudje? Presenetljivo veliko aplikacij, zgrajenih z AI, lahko ustvarja zapise, vendar jih ne more urejati, ali pa lahko kdorkoli izbriše karkoli.

Vsakdanja primerjava: škatla z recepti

Predstavljajte si škatlo s kartotekami receptov na kuhinjski polici.

  • Ustvari: napišete novo kartico in jo vložite.
  • Beri: prelistate škatlo ali izvlečete tisto za lazanjo.
  • Posodobi: prečrtate »200 g sira« in napišete »250 g«.
  • Izbriši: vzamete kartico ven in jo vržete stran.

Zdaj dodajte pravila: kartice lahko meče stran samo glavni kuhar, vsaka kartica mora imeti naslov in nihče ne sme vložiti dveh kartic z istim imenom. To je aplikacija CRUD z validacijo in dovoljenji – kar je večina pravih aplikacij.

Kako se CRUD pojavi v vsakem sloju

Vsaka operacija se pojavi na zaslonu, na strežniku in v bazi. Če jih vidite drugo ob drugi, veliko pojasni o tem, kako so aplikacije zgrajene.

OperacijaNa zaslonuZahteva API (REST)SQL v bazi
UstvariGumb »Novo« in obrazecPOST /api/suppliersINSERT
BeriSeznam z iskanjem in filtri; podrobna stranGET /api/suppliers in GET /api/suppliers/42SELECT
PosodobiObrazec »Uredi« ali urejanje na mestuPUT ali PATCH /api/suppliers/42UPDATE
IzbrišiGumb »Izbriši« s potrditvijoDELETE /api/suppliers/42DELETE (ali označitev vrstice kot izbrisane)

Zaslon je frontend, zahteva API je način, kako frontend govori z zaledjem, SQL pa je način, kako zaledje govori z bazo. Če so te besede nove, glejte kaj je API in kaj je baza podatkov.

Praktičen primer: sledilnik izposoje opreme

Medijski oddelek šole izposoja kamere in mikrofone učencem in ves čas izgublja sled, kje je kaj. Želijo preprosto aplikacijo.

Zapisi. Dve vrsti stvari: oprema (ime, vrsta, serijska številka, stanje) in izposoje (katera oprema, kateri učenec, datum izposoje, rok vrnitve, datum vrnitve).

CRUD za opremo:

  • Ustvari: osebje doda novo kamero s serijsko številko. Pravilo: serijske številke morajo biti enolične.
  • Beri: seznam vse opreme, filtrabilen po vrsti in po »na voljo zdaj«; podrobna stran, ki prikazuje zgodovino izposoj enega predmeta.
  • Posodobi: spremenite stanje na »potrebuje popravilo«.
  • Izbriši: običajno ne pravo brisanje. Če se kamera z 30 preteklimi izposojami izbriše, zapisi izposoj izgubijo povezavo. Namesto tega jo označite kot »upokojeno«, da izgine s seznama razpoložljivih, njena zgodovina pa ostane. To imenujemo mehko brisanje (soft delete).

CRUD za izposoje:

  • Ustvari: predmet izposodite učencu. Pravilo: predmeta, ki je že izposojen, ni mogoče izposoditi znova.
  • Beri: »zamujene izposoje« – seznam, kjer je rok minil in ni datuma vrnitve.
  • Posodobi: zabeležite datum vrnitve, ko se predmet vrne.
  • Izbriši: samo osebje, za izposoje, vnesene pomotoma.

Dovoljenja. Učenci lahko berejo, kaj je na voljo; samo osebje lahko ustvarja, posodablja ali briše. Ta preverjanja tečejo na strežniku, ne samo s skrivanjem gumbov.

To je celotna aplikacija. Zanimivi deli – brez dvojnega izposojanja, seznam zamudnikov, zgodovina po predmetu – so pravila in poizvedbe nad preprostim CRUD-om.

Ključni pojmi

  • Zapis (vrstica): en predmet, kot ena stranka ali ena izposoja.
  • Entiteta / vir: vrsta zapisa, kot so »dobavitelji«. Vsaka običajno dobi svojo tabelo in svoj nabor CRUD zaslonov.
  • Validacija: preverjanja vnosa – obvezna polja, veljaven e-poštni naslov, pozitivna količina. Naredite jo v obrazcu za udobje in na strežniku zaradi varnosti.
  • Mehko brisanje (soft delete): označevanje zapisa kot izbrisanega ali arhiviranega namesto odstranitve, da zgodovina in povezave ostanejo.
  • Paginacija: prikaz dolgega seznama po straneh, da aplikacija ostane hitra.
  • Revizijski dnevnik: zapis, kdo je kaj ustvaril, spremenil ali izbrisal, in kdaj.
  • Skrbniška plošča: nabor CRUD zaslonov, s katerimi osebje upravlja podatke aplikacije.

Pogoste napake in zmote

  • Pozabljanje ene od štirih. Aplikacije pogosto pridejo z ustvarjanjem in branjem, a brez urejanja, zato je vsaka tipkarska napaka pomeni brisanje in ponovni vnos. Preverite vse štiri za vsako entiteto.
  • Brisanja, ki kvarijo stvari. Brisanje stranke, ki ima račune, lahko pusti osirotele račune ali izbriše zgodovino. Odločite za vsako entiteto posebej: blokirajte brisanje, uporabite mehko brisanje ali izbrišite tudi povezane zapise.
  • Dovoljenja samo v vmesniku. Skrivanje gumba Izbriši ne preprečuje, da nekdo pošlje zahtevek DELETE. Strežnik mora preveriti, kdo sprašuje.
  • Posodabljanje po ID-ju brez preverjanja lastništva. Če lahko uporabnik A ureja /api/notes/42 s spremembo številke v URL-ju, lahko ureja zapis uporabnika B. Vsaka posodobitev in brisanje mora potrditi, da zapis pripada zahtevajočemu.
  • Brez potrditve pri brisanju. En napačen klik ne sme uničiti podatkov. Zahtevajte potrditev ali možnost razveljavitve.
  • »CRUD pomeni osnovno, zato ni vredno graditi.« Mnogi dragoceni izdelki so aplikacije CRUD, ki se bolje prilagodijo delovnemu toku kot splošno orodje.

Kaj zahtevati od svojega graditelja z AI

Uporabite ta vzorec za vsako entiteto, eno za drugo:

Ustvari funkcionalnost dobavitelji z seznamom, ustvarjanjem, urejanjem in brisanjem. Polja: ime (obvezno), kontaktni e-poštni naslov (veljaven e-poštni naslov), telefon, kategorija (ena od: hrana, embalaža, čiščenje), opombe. Pogled seznama z iskanjem po imenu in filtrom po kategoriji, 20 na stran. Pred brisanjem zahtevaj potrditev; če ima dobavitelj naročila, ga arhiviraj namesto brisanja. Ustvarjati, urejati ali arhivirati lahko samo prijavljeno osebje – uveljavi to na strežniku.

Nato preizkusite vse štiri operacije, kot dovoljen uporabnik in kot nekdo, ki ne bi smel imeti dostopa. Ko ena entiteta deluje, dodajte naslednjo. Kako zgraditi notranje orodje pokaže, kako zasloni CRUD postanejo popolna skrbniška aplikacija, kaj je Postgres pa pojasni bazo, na kateri večina teh aplikacij sloni.

Aplikacije CRUD v Mythex

Aplikacije CRUD so ena od stvari, ki jih graditelji aplikacij z AI počnejo najbolje, in Mythex ni izjema. V klepetu zahtevate entiteto in njena polja, Mythex pa projektu pripne bazo Postgres, ustvari tabelo in v živem predogledu zgradi sezname, obrazce in podrobne zaslone; nato lahko zaženete /test in preverite tok. Dokumentacija ima recept za aplikacijo CRUD z začetnim pozivom, graditelj notranjih orodij in predloge nadzornih plošč pa sta dobri izhodišči.

Vprašanja

Kaj pomeni CRUD?

CRUD pomeni ustvari (create), beri (read), posodobi (update) in izbriši (delete): dodajanje novega zapisa, pregledovanje zapisov, spreminjanje zapisa in odstranitev enega. Skoraj vsaka aplikacija, ki shranjuje podatke, je zgrajena iz teh štirih operacij.

Kaj je aplikacija CRUD?

Aplikacija CRUD je aplikacija, katere glavna naloga je upravljanje zapisov prek obrazcev, seznamov in podrobnih strani, na primer CRM, sledilnik zalog, skrbniška stran za rezervacije ali zaledje spletne strani za iskanje dela. Večina notranjih orodij in skrbniških plošč so aplikacije CRUD.

Kako je CRUD povezan z REST API-ji?

V tipičnem REST API-ju ustvarjanje uporablja zahtevek POST, branje GET, posodabljanje PUT ali PATCH, brisanje pa DELETE. Zaledje nato izvede ustrezno operacijo v bazi: INSERT, SELECT, UPDATE ali DELETE.

Ali je aplikacija CRUD premalo vredna?

Ne. Veliko koristne poslovne programske opreme je CRUD z dobrimi pravili, dovoljenji in poročili nad njim. Vrednost je v dobrem modeliranju podatkov in prilagoditvi delovnemu toku, ne v nenavadni tehnologiji.

Mythex · Pricing · Zgradite karkoli z AI · Predloge za spletna mesta in aplikacije · Mythex v primerjavi · Slovar pojmov gradnje aplikacij z AI · Brezplačna orodja za gradnjo aplikacij z AI · English

English አማርኛ العربية Български বাংলা Bosanski Català Čeština Dansk Deutsch Ελληνικά Español Español (España) Eesti فارسی Suomi Français Français (Canada) ગુજરાતી हिन्दी Hrvatski Magyar Հայերեն Bahasa Indonesia Íslenska Italiano 日本語 ქართული Қазақ тілі ಕನ್ನಡ 한국어 Lietuvių Latviešu Македонски മലയാളം Монгол मराठी Bahasa Melayu မြန်မာ Norsk bokmål Nederlands ਪੰਜਾਬੀ Polski Português (Brasil) Português (Portugal) Română Русский Slovenčina Soomaali Shqip Srpski Svenska Kiswahili தமிழ் తెలుగు ไทย Tagalog Türkçe Українська اردو Tiếng Việt 简体中文 繁體中文(香港) 繁體中文(台灣)