{"id":226084,"date":"2022-08-22T11:05:00","date_gmt":"2022-08-22T08:05:00","guid":{"rendered":"https:\/\/wordpress.mediadoma.com\/?p=226084"},"modified":"2022-11-08T01:53:13","modified_gmt":"2022-11-07T22:53:13","slug":"crud-suesteemi-loomine-wordpressis-wpdatatables-tables-plugin","status":"publish","type":"post","link":"https:\/\/wordpress.mediadoma.com\/et\/crud-suesteemi-loomine-wordpressis-wpdatatables-tables-plugin\/","title":{"rendered":"CRUD-s\u00fcsteemi loomine WordPressis &#8211; wpDataTables Tables Plugin"},"content":{"rendered":"\n<p>See artikkel WordPressis CRUD-s\u00fcsteemi loomise kohta avaldati 2014. aastal. M\u00e4rkasime, et see teema muutus veelgi aktuaalsemaks, mist\u00f5ttu otsustasime sellele uue ilme anda.<\/p>\n<p>Mis on CRUD-s\u00fcsteem, kuidas integreerida CRUD-s\u00fcsteem MySQL-i jaoks oma WordPressi saidile, millised on erinevate l\u00e4henemisviiside kasutamise plussid ja miinused?<\/p>\n<h2>Mis on CRUD-s\u00fcsteem?<\/h2>\n<p>L\u00fchend <strong>CRUD<\/strong> tuleb s\u00f5nadest <strong>C<\/strong> reate, <strong>R<\/strong> ead, <strong>U<\/strong> pdate, <strong>D<\/strong> elete. Mis teisis\u00f5nu t\u00e4hendab andmehalduss\u00fcsteemi. Veebis t\u00e4hendab see t\u00f5en\u00e4oliselt tarkvara, mis haldab teie andmebaasi kirjeid. Tavaliselt viitab see MySQL-ile, PostgreSQL-ile, MS SQL-ile v\u00f5i teistele andmebaasimootoritele.<\/p>\n<p>Suurep\u00e4rane ja v\u00f5ib-olla k\u00f5ige populaarsem n\u00e4ide CRUD-s\u00fcsteemist on <a href=\"https:\/\/www.phpmyadmin.net\/home_page\/index.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">phpMyAdmin<\/a>. PHPMyAdmin on t\u00f6\u00f6riist, mida kasutavad peaaegu k\u00f5ik veebiarendajad MySQL-i andmete v\u00f5rgus haldamiseks. See sai nii laialt levinud, et praegu v\u00f5ib seda nimetada tavaliseks MySQL-i andmebaaside haldamise t\u00f6\u00f6riistaks. T\u00e4nap\u00e4eval on see hostiteenuse pakkujate juures peaaegu igale CPaneli t\u00f6\u00f6riistale eelinstallitud.<\/p>\n<p>CRUD-s\u00fcsteemide standardseid kasutusjuhtumeid on tuhandeid. N\u00e4iteks \u2013 peaaegu iga kataloog, kirjelogi, statistiline info. P\u00f5him\u00f5tteliselt eeldaks k\u00f5ik teabe salvestamisega seotud teabe bittide lisamist, muutmist ja eemaldamist. Siis tulevad m\u00e4ngu CRUD-s\u00fcsteemid.<\/p>\n<h2>Miks vajate WordPressis CRUD-s\u00fcsteemi?<\/h2>\n<p>WordPress ise on v\u00f5imas CMS (sisuhalduss\u00fcsteem), mis on ka CRUD-s\u00fcsteemi erijuhtum. Nagu teate, saavad WordPressi saidi kasutajad lisada postitusi ja lehti, neid muuta v\u00f5i kustutada. Kuid m\u00f5nikord tekib olukord, kus peate haldama m\u00f5nda andmebaasiandmeid otse WordPressi kasutajaliidesest, mis \u00fcldiselt pole postitatud ega lehtedega seotud ega sobi WordPressi taksonoomiatesse. Muu hulgas v\u00f5ib see olla \u00fcks j\u00e4rgmistest olukordadest, kui vajate WordPressis s\u00f5ltumatut CRUD-s\u00fcsteemi:<\/p>\n<ul>\n<li>Soovite, et teie WordPressi saidil oleks veaj\u00e4lgija, sisestuslogi v\u00f5i m\u00f5ni muu andmesisestust\u00f6\u00f6riist;<\/li>\n<li>V\u00f5i n\u00e4iteks soovite lubada m\u00f5nel kasutajal muuta teie saidi esiotsas \u00e4riga seotud andmeid, ilma et nad annaksid neile juurdep\u00e4\u00e4su WordPressi saidi administraatoripaneelile v\u00f5i isegi avaldamata t\u00f5siasja, et sait t\u00f6\u00f6tab WordPressis.<\/li>\n<li>Teine n\u00e4ide on n\u00f5ue lubada m\u00f5nel kasutajal DB tabelit redigeerida. N\u00e4iteks muuta esitatud tellimust, muuta m\u00f5ningaid isikuandmeid jne.<\/li>\n<\/ul>\n<p>Ja sarnased taotlused.<\/p>\n<h2>Kuidas integreerida CRUD-s\u00fcsteemi WordPressi saidile?<\/h2>\n<h3>Lihtsaim lahendus \u2013 proovige leida sobiv pistikprogramm<\/h3>\n<p><strong>Esiteks \u2013 veenduge, et teil on seda t\u00f5esti vaja.<\/strong> Paljud \u00fclesanded ei ole ainulaadsed ja t\u00f5en\u00e4oliselt leiate oma vajadustele vastava pistikprogrammi. N\u00e4iteks kui vajate veaj\u00e4lgijat, nagu eespool mainitud, saate <a href=\"https:\/\/wordpress.org\/plugins\/really-simple-issue-tracker\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">seda<\/a> v\u00f5i <a href=\"https:\/\/wordpress.org\/plugins\/bugerator\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">seda<\/a> kontrollida ja alla laadida .<\/p>\n<p>Ja kui vajate midagi \u00fcldisemat, n\u00e4iteks redigeerida erinevaid MySQL-i tabeleid WordPressi esiosast, proovige meie <a href=\"https:\/\/wpdatatables.com\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">wpDataTablesi<\/a> pistikprogrammi, mis on p\u00f5him\u00f5tteliselt WordPressi CRUD-s\u00fcsteem. Funktsioonide loendit ja selle toimimise n\u00e4iteid n\u00e4ete <a href=\"https:\/\/wpdatatables.com\/documentation\/general\/features-overview\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">siit<\/a>. V\u00f5i isegi proovige tasuta Lite versiooni <a href=\"https:\/\/wordpress.org\/plugins\/wpdatatables\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">WordPressi pistikprogrammide hoidlas<\/a>.<\/p>\n<p>V\u00e4\u00e4rib m\u00e4rkimist, et wpDataTables ei sea mingeid piiranguid andmestruktuurile, veergude v\u00f5i ridade arvule, toetab paljusid <a href=\"https:\/\/wpdatatables.com\/documentation\/column-features\/currency-percentage-and-other-columns\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">andmet\u00fc\u00fcpe<\/a> ja <a href=\"https:\/\/wpdatatables.com\/documentation\/front-end-editing\/editor-input-types\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">erinevaid redaktori sisestust\u00fc\u00fcpe<\/a>. N\u00e4iteks teatud t\u00fc\u00fcpi, nagu manused v\u00f5i <a href=\"https:\/\/wpdatatables.com\/documentation\/column-features\/datetime-columns\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">DateTime<\/a>. Samuti v\u00f5imaldab see redigeerida andmeid <a href=\"https:\/\/wpdatatables.com\/documentation\/front-end-editing\/creating-editable-tables\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">h\u00fcpikaknavormi redaktori<\/a>, <a href=\"https:\/\/wpdatatables.com\/documentation\/front-end-editing\/inline-editing\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">tekstisisese redaktori<\/a> v\u00f5i isegi <a href=\"https:\/\/wpdatatables.com\/documentation\/front-end-editing\/excel-like-editor\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">arvutustabeli Exceli-laadse redaktori<\/a> abil .<\/p>\n<p>Kui tunnete endiselt, et peate WordPressis looma kohandatud CRUD-s\u00fcsteemi, peaksite selle tegemiseks valmistuma t\u00f5siseks kodeerimiseks.<\/p>\n<h3>K\u00e4ivitage uus WordPressi pistikprogramm<\/h3>\n<p>Kui arvate, et \u00fckski pistikprogramm ei vasta teie vajadustele, looge oma pistikprogramm! See ei pruugi olla nii hirmutav, kui esmapilgul tundub. Alustuseks lugege <a href=\"http:\/\/code.tutsplus.com\/tutorials\/create-a-custom-wordpress-plugin-from-scratch--net-2668\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">seda toredat \u00f5petust<\/a> WordPressi pistikprogrammi nullist loomise kohta. Ja muidugi ka <a href=\"https:\/\/codex.wordpress.org\/Writing_a_Plugin\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">see<\/a> WordPress Codexis.<\/p>\n<p>Mis tahes pistikprogrammi (sh WordPressi pistikprogrammi CRUD-s\u00fcsteemi) loomise esimene samm on failide \u00f5ige struktureerimine.<br \/>\nTavaline l\u00e4henemine on paigutada p\u00f5hikirje CRUD-punkti fail plugina juurkataloogi ja valmistada ette mitu alamkausta:<\/p>\n<ul>\n<li><strong>Varad<\/strong> \u2013 k\u00f5ik javascriptid, laaditabelid, fondid, pildid ja muud staatilised varad, mis on teie CRUD-s\u00fcsteemi jaoks vajalikud;<\/li>\n<li><strong>Allikas<\/strong> \u2013 PHP p\u00f5hiklasside kaust, mis t\u00e4idab k\u00f5iki CRUD-funktsioone taustas\u00fcsteemis;<\/li>\n<li><strong>Lib<\/strong> \u2013 kaust mis tahes kolmanda osapoole komponentide jaoks, mida v\u00f5iksite oma CRUD-s\u00fcsteemis kasutada;<\/li>\n<li><strong>Mallid<\/strong> \u2013 HTML-mallide kaust, mis on teie CRUD-s\u00fcsteemi kasutajaliides.<\/li>\n<\/ul>\n<p>Neid v\u00f5ib olla rohkem (kontrollereid, l\u00fchikoodik\u00e4sitlejaid ja muid) \u2013 aga see on alustuseks miinimum.<\/p>\n<h3>Redaktori tausta loomine (PHP klassid)<\/h3>\n<p>Esiteks on teil vaja taustaosa: PHP-skripti, mis tegelikult teeks CRUD-i t\u00f6id. Selleks peate selle \u00fchendama WordPressi DB-ga (globaalne $ wpdb objekt). <a href=\"http:\/\/wp.smashingmagazine.com\/2011\/09\/21\/interacting-with-the-wordpress-database\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Siit<\/a> saate lugeda toredat \u00f5petust WordPressi andmebaasi ja $wpdb objekti kasutamise kohta pistikprogrammides.<\/p>\n<p>Kui kasutate v\u00e4list andmebaasi, peate n\u00e4iteks kasutama eraldi <a href=\"https:\/\/php.net\/pdo\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">PDO \u00fchendust<\/a> v\u00f5i lihtsalt sisseehitatud PHP <a href=\"http:\/\/www.php.net\/manual\/en\/book.mysqli.php\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">MySQLi<\/a> funktsioone (kui teie andmebaasimootor on MySQL).<\/p>\n<p>Teie \u00fclesandeks selles etapis on valmistada ette klasside ja meetodite komplekt, mis v\u00f5tab kasutajaliidese andmeid mingil eeldataval kujul vastu, kinnitab ja <a href=\"https:\/\/codex.wordpress.org\/Validating_Sanitizing_and_Escaping_User_Data\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">desinfitseerib need<\/a> (kogu sisendi puhastamine on k\u00f5igi CRUD-s\u00fcsteemide jaoks v\u00e4ga oluline turvameede) ja teostab toimingud <strong>INSERT<\/strong>, <strong>UPDATE<\/strong> ja <strong>DELETE<\/strong> teie andmebaasis.<\/p>\n<p>Nagu eelmises etapis kirjeldatud, kuuluksid need p\u00f5hifailid teie uue CRUD WordPressi pistikprogrammi l\u00e4htekausta.<\/p>\n<h3>Esiosa liidese loomine (HTML, JS, PHP)<\/h3>\n<p>Kui andmebaasihaldusklassid ja -meetodid on ette valmistatud, vajab teie pistikprogramm kasutajaliidest teie uue CRUD-s\u00fcsteemiga WordPressis. Parim lahendus oleks koostada uutes pistikprogrammifailides mallide komplekt ja v\u00e4ljastada see l\u00fchikoodiga k\u00f5ikjal, kus vajate.<\/p>\n<p>M\u00f5ttekas on hoida HTML-malle alati koodist eraldatuna (MVC l\u00e4henemine) ja valmistada ette loogiliselt eraldatud mallifailid, nt: &#8220;edit.tpl.php&quot;, &#8220;delete.tpl.php&#8221;, &#8220;list.tpl.php&#8221;. &#8221; jne \u2013 iga CRUD lehe v\u00f5i toimingu mall.<\/p>\n<p><a href=\"https:\/\/codex.wordpress.org\/Shortcode_API\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Siit<\/a> saate lugeda suurep\u00e4rast koodeksiartiklit WordPressi l\u00fchikoodi API kohta.<\/p>\n<h3>\u00dchendage esiots tagaosaga AJAX-k\u00f5nede (JS) abil<\/h3>\n<p>Muidugi saate seda teha &quot;vana kooli stiilis&quot;, lihtsa vormi esitamise ja lehe uuesti laadimisega. Kuid t\u00e4nap\u00e4eval pole see enam levinud l\u00e4henemisviis. AJAX-i kasutamine on selle asemel standardne l\u00e4henemisviis kas jQuery v\u00f5i muude teekide, n\u00e4iteks Angulari, kaudu. Seega on meie soovitus v\u00f5tta veidi aega ja uurida AJAX-i kasutamist oma WordPressi pistikprogrammides. <a href=\"https:\/\/codex.wordpress.org\/AJAX_in_Plugins\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Siin<\/a> on suurep\u00e4rane Codexi artikkel selle kohta, kuidas AJAX-i oma pistikprogrammides kasutada \u2013 nii administraatori kui ka esiotsa poolel.<\/p>\n<p>Saate panna JS-koodi kausta &quot;varad&quot;, mille koostasite esimeses etapis.<\/p>\n<h3>Testige, t\u00e4psustage ja siluge<\/h3>\n<p>Kui juurutusosa on tehtud \u2013 v\u00f5tke veidi aega ja testige oma uut CRUD-s\u00fcsteemi WordPressis. Te ei saa algusest peale k\u00f5iki vigu m\u00e4rgata, kuid CRUD-i rutiinsete toimingute mitu korda kordamine erinevate n\u00e4idetega (eelistatavad &quot;serva&quot; juhtumid &#8211; nt v\u00e4ga suured andmemahud, mitu korda samal nupul kl\u00f5psamine jne) aitab teid alati. enamiku vigade tabamiseks \u2013 ja need juhtuvad alati, kui rakendate midagi uut.<\/p>\n<h2>CRUD vs REST: mis vahet on<\/h2>\n<p>REST on arhitektuurne stiil v\u00f5rgurakenduste loomiseks, mis p\u00f5hinevad klient-serveri olekuta vahem\u00e4llu salvestaval sideprotokollil, st HTTP-protokollil. CRUD on akron\u00fc\u00fcm s\u00f5nadest CREATE, READ, UPDATE ja DELETE, mis on programmeerimise p\u00fcsiva salvestamise p\u00f5hifunktsioonid.<\/p>\n<p>CRUD toimingud, st CREATE, READ, UPDATE, DELETE, on sarnased p\u00f5hik\u00e4skudega REST, st GET, PUT, POST, DELETE, mis p\u00f5hjustab nende kahe segadust. Mis on CRUD? Mis on REST? Mis on CRUD-i m\u00e4\u00e4ratlus CRUD vs REST? Kas REST on pelgalt CRUDi koopia?<\/p>\n<p>Need on k\u00f5ik v\u00e4ga asjakohased k\u00fcsimused, millele see artikkel kavatseb \u00fcksikasjalikult vastata!<\/p>\n<h3><strong>Kuidas REST t\u00f6\u00f6tab?<\/strong><\/h3>\n<p>Te ei saa aru sellistest terminitest nagu REST API, REST-teenused, CRUD-maatriks v\u00f5i CRUD-andmebaas v\u00f5i REST-programmeerimine, kui te ei m\u00f5ista nende kahe protsessi erinevust nende toimimise osas. Segadus kaob, kui teate seda erinevust.<\/p>\n<p>Saate t\u00f6\u00f6tada REST-iga mis tahes ressursiga, olgu see siis meediumifail, dokument, veebisait jne. REST-i kallal ei ole piiranguid. HTML-i saate kasutada ainult suhtlusprotokollina, et osutada ressurssidele. REST t\u00e4histab esinduslikku riigi\u00fclekannet.<\/p>\n<p>REST n\u00e4itab, et seal t\u00e4histab iga eristav URL m\u00f5nda objekti, millele p\u00e4\u00e4sete juurde HTTP GET-i kaudu, samuti saate seda muuta ja kustutada HTTP POST, PUT v\u00f5i DELETE kaudu.<\/p>\n<h3><strong>Kuidas CRUD t\u00f6\u00f6tab?<\/strong><\/h3>\n<p>CRUD-i saate rakendada ainult andmebaasikirjetele ja te ei saa luua CRUD-i API-sid, nagu loote REST API-sid. CRUD rakendus on piiratud andmebaasidega, mist\u00f5ttu pole CRUD erinevalt RESTist arhitektuuristiil, vaid ts\u00fckkel. K\u00f5ik rakendused ja veebisaidid sisaldavad erinevaid CRUD-ts\u00fckleid.<\/p>\n<p>N\u00e4iteks saab e-kaubanduse veebisaidi k\u00fclastaja LUUA konto, V\u00c4RSKENDADA kontot, LUGEDA teavet ja KUSTUTADA konto. See on t\u00e4ielik CRUD-ts\u00fckkel, mis h\u00f5lmab iga CRUD-i toimingut.<\/p>\n<p>N\u00e4iteks samal e-kaubanduse veebisaidil saab k\u00fclastaja LUUA kauba e-korvis ja seej\u00e4rel l\u00e4bida kogu CRUD-i ts\u00fckli, LUGEDES, V\u00c4RSKENDATE ja isegi KUSTUTADA.<\/p>\n<h3><strong>RESTi alus ja p\u00f5him\u00f5tted<\/strong><\/h3>\n<p>Representational State Transferi p\u00f5hik\u00e4sud \u2013 akron\u00fc\u00fcm REST \u2013 keerlevad \u00fcmber objekti v\u00f5i ressursi, mida v\u00f5ib kirjeldada kui k\u00f5ike, mida saate HTTP-protokolli abil paljastada. REST-ressursside n\u00e4ited: pilt, veebisait, dokument, teenus. Taevas on limiidiks.<\/p>\n<p>REST on rakenduste programmeerimisliides ehk API v\u00f5i hajutatud multimeediumi jaoks m\u00f5eldud arhitektuur. API on veebiteenus, mis j\u00e4rgib REST arhitektuuri p\u00f5him\u00f5tteid. Seega kutsub REST iga API \u00fche HTTP p\u00e4ringumeetodi GET, PUT, POST ja DELETE kaudu.<\/p>\n<h3><strong>RESTful arhitektuuri kuus juhtp\u00f5him\u00f5tet<\/strong><\/h3>\n<ol>\n<li>\n<h3><strong>Kliendi-serveri mandaat<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p>Klient-server mandaat r\u00f5hutab asjaolu, et REST esindab hajutatud meetodit, mis tugineb kliendi ja serveri eraldamise olemusele. REST-teenus sisaldab mitmeid v\u00f5imalusi ja t\u00e4idab taotlusi. Klient esitab p\u00e4ringud ja server v\u00f5tab need vastu v\u00f5i keeldub.<\/p>\n<ol start=\"2\">\n<li>\n<h3><strong>Kodakondsusetus<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p><a href=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-205612-61e8cbbce0972.jpg\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/wordpress.mediadoma.com\/wp-content\/uploads\/2022\/01\/post-205612-61e8cbbce0972.jpg\" alt=\"CRUD-s\u00fcsteemi loomine WordPressis - wpDataTables Tables Plugin\" ><\/a><\/p>\n<p>Kodakondsusetus piirab tarbija ja serveri vahel esitatavate p\u00e4ringute t\u00fc\u00fcpi. Tegelikult k\u00e4ivitab p\u00e4ring klienditeeninduse suhtluse, kus p\u00e4ring sisaldab kogu teavet, mida server vajab vastuse saamiseks.<\/p>\n<ol start=\"3\">\n<li>\n<h3><strong>Vahem\u00e4llu salvestamine<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p>P\u00e4ringu vahem\u00e4llu salvestamise eesm\u00e4rk ei ole kunagi esitada sama taotlust kaks korda, kuna vahem\u00e4llu salvestamine annab serverile korralduse m\u00e4rgistada vastused vahem\u00e4llu salvestatavateks v\u00f5i mitte. Selle tulemusena v\u00e4hendab vahem\u00e4llu salvestamine kodakondsusetuse tekitatud piiranguid v\u00f5i piiranguid.<\/p>\n<ol start=\"4\">\n<li>\n<h3><strong>\u00dchtne leping<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p>\u00dchtne leping v\u00e4listab mitme s\u00f5ltumatu liidese kasutamise rakenduse programmeerimisliidese v\u00f5i API sees. REST j\u00e4rgib \u00fchtse lepingu p\u00f5him\u00f5tteid. Seet\u00f5ttu jagatakse h\u00fcpermeedia \u00fchenduste kaudu \u00fchte REST-liidest.<\/p>\n<ol start=\"5\">\n<li>\n<h3><strong>Kihiline s\u00fcsteem<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p>Kihiline s\u00fcsteem kasutab liidese arendamiseks ja laiendamiseks mitut s\u00f5ltumatut kihti. Kuna kihid ei n\u00e4e \u00fcksteise sisse, saab sisestada uusi p\u00e4ringuid ja vahevara, mis ei m\u00f5juta esialgseid k\u00e4ske ega klient-serveri toimimist.<\/p>\n<ol start=\"6\">\n<li>\n<h3><strong>Valikuline: Code-On-Demand<\/strong><\/h3>\n<\/li>\n<\/ol>\n<p>Kuigi klient-server, vahem\u00e4llu salvestamine, kodakondsuseta olek, \u00fchtne leping ja kihiline s\u00fcsteem on RESTful rakenduste jaoks kohustuslikud, ei ole n\u00f5udmisel kood kohustuslik. Code-on-Demand v\u00f5imaldab aga klientide loogikal j\u00e4\u00e4da s\u00f5ltumatuks ja seega v\u00e4rskendada serveri loogikast eraldi.<\/p>\n<h3><strong>M\u00f5tete l\u00f5petamine teemal CRUD vs REST<\/strong><\/h3>\n<p>CRUD h\u00f5lmab olulisi toiminguid, mida tehakse staatilises andmesalvestuses v\u00f5i andmebaasides, n\u00e4iteks passiivsete kirjete v\u00f5i objektide k\u00e4sitlemine. CRUD manipuleerib sisuliselt p\u00f5hiandmetega.<\/p>\n<p>REST tugineb ressursside esitamisele unikaalsete URL-ide kaudu, kus ressursid on objekti abstraktsioonid, kus n\u00e4iteks kasutaja kommentaar v\u00f5ib olla ressurss.<\/p>\n<p>Sellisena h\u00f5lmab REST enamat kui kommentaaride tabelis kirje. REST k\u00e4sitleb kirje seost kasutajaressursi ja postituse\/kommentaariga, millele see on lisatud. REST on v\u00e4ga k\u00f5rgetasemeline API stiil, mis suhtleb keerulise s\u00fcsteemiga.<\/p>\n<hr \/>\n<p>Muidugi ei olnud see artikkel t\u00e4ielik \u00f5petus \u2013 kuna selle kirjutamiseks kuluks kaksk\u00fcmmend lehek\u00fclge. Kuid andke meile teada, kui teil on k\u00fcsimusi v\u00f5i soovite n\u00e4ha konkreetset samm-sammult n\u00e4idet ja me koostame teile selle.<\/p>\n<p>Loodame, et sellest oli mingil moel abi.<\/p>\n<p>T\u00e4name, et lugesite!<\/p>\n<p>Pildi allikas: <a href=\"http:\/\/www.tyseo.net\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">http:\/\/www.tyseo.net<\/a><\/p>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/wpdatatables.com\" class=\"external external_icon\">wpdatatables.com<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>CRUD-s\u00fcsteemi loomine WordPressis v\u00f5ib olla keeruline. Selles artiklis n\u00e4eme CRUD-s\u00fcsteemi definitsiooni ja erinevaid viise, kuidas seda teha.<\/p>\n","protected":false},"author":1,"featured_media":205613,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[842,812,863],"tags":[1165],"class_list":["post-226084","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-opetused","category-pistikprogrammid","category-wordpress-4","tag-affiai-et"],"_links":{"self":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/226084","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/comments?post=226084"}],"version-history":[{"count":0,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/posts\/226084\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media\/205613"}],"wp:attachment":[{"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/media?parent=226084"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/categories?post=226084"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/wordpress.mediadoma.com\/et\/wp-json\/wp\/v2\/tags?post=226084"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}