Satura rādītājs
Izstrādājot lietojumprogrammu vai tīmekļa sistēmas, mums parasti ir jāsadarbojas ar datu bāzēm. Šim nolūkam mums ir jāizveido saskarnes, kas ļauj mums izveidot savienojumu, pievienot datus, rediģēt vai dzēst. Šis darbības veids ir pazīstams dažādos veidosCRUD ir akronīms, kas apzīmē Izveidot, Lasīt, Atjaunināt un Dzēst. ABM ir akronīms, kas apzīmē High, Low un Data Modification. ABCDE ir akronīms, kas apzīmē Pievienot, Atrast, Mainīt, Parādīt (parādīt vai sarakstu), Dzēst datus.
Katrs php tīmekļa izstrādātājs vienmēr cenšas optimizēt izstrādes laiku, un šāda veida uzdevumu veikšana prasa daudz laika, piemēram, vienkāršas, stabilas un drošas tīmekļa administrēšanas sistēmas izveide. Patiesībā visvairāk laika ir jāizprot un jāpārveido kodā mijiedarbības prasības ar datu bāzi, biznesa loģika, modeļi un viedokļi, lai mijiedarbotos ar katru datu bāzes tabulu.
KodaIgniter risinājums šajā gadījumā ir izmantot Grocerycrud bibliotēka, kas būs atbildīga par visu ģenerēšanu, vienkārši konfigurējot dažus parametrus, Tas ietver arī css dizainu, JavaScripts, tabulas, veidlapas, datu režģi, funkcijas, modeļus, kurus mēs varam izmantot tieši savā sistēmā.
Grocery CRUD ir bibliotēka, kas izstrādāta ar pHp, ir bezmaksas programmatūra un atvērtā pirmkoda licence GPL v3 un MIT. Lai to izmantotu, mums ir jālejupielādē bibliotēka no vietnes http://www.grocerycrud.com/downloads
Pēc tās lejupielādes mēs izpakojam un kopējam failus
Mēs nedetalizēsim, kā konfigurēt Koda devējs tā vietā mēs koncentrēsimies uz tiešu izmantošanu. Pieņemsim, ka mums ir īpašumu datu bāze, kuras tabulas ir īpašumi, lietotāji, pilsētas vai provinces, īpašumu veidi un darbības veids, ja tas ir pārdošana vai īre.
Lai ģenerētu nekustamā īpašuma tabulas drupu, mēs izveidosim kontrolieri ar nosaukumu nekustamais īpašums ar šādu kodu
ielādēt-> datu bāze (); $ this-> ielādēt-> bibliotēka ('grocery_CRUD');} publisko funkciju indekss () {$ crud = new grocery_CRUD (); $ crud-> set_theme ('datu tabulas'); $ crud-> set_table ('rekvizīti'); $ crud-> kolonnas ('userid', 'property type id', 'price'); $ grid = $ crud-> render (); $ this-> load-> view ('nekustamais īpašums.php', $ režģis);}}Mēs izsaucam datu bāzes bibliotēku un bibliotēku pārtikas veikals tad mēs iestatām tēmu vai dizainu, ko vēlamies izmantot režģim, mēs iestatām tabulu, lai tā tiktu parādīta, un mēs norādām, kuras kolonnas vai lauki tiks parādīti, piešķirot tabulas laukus, kurus mēs vēlamies parādīt, mēs ģenerējam visu, izmantojot funkciju atveidot () un mēs to saglabājam mainīgajā, ko nosūtām uz skatu. Tālāk mēs izveidojam skatu, ko saucam par nekustamo īpašumu list.php
Skatā mums būs jāparāda css un js, lai tas darbotos, failu atrašanās vieta jau ir definēta veidnē, šajā gadījumā mēs nolēmām izmantot veidni datu bāzes ko mēs varam atrast veidņu direktorijā:
/ asset / grocery_crud / themes / datatables /Ja mēs pārbaudām mūsu lietojumprogrammu, rezultāts būs šāds:
PALIELINĀT
Mēs redzam, kā tika izveidots viss režģis ar nelielu kodu, tagad mēs redzēsim, kā pievienot un uzlabot funkcionalitāti. Piemēram, id kolonnās mēs varam mainīt nosaukumu, kā arī saistīto datu ID vietā mēs vēlētos dažus nozīmīgākus datus, piemēram, lietotāja ID vietā parādās nosaukums, un idtipoinmueble vietā, kas parāda, kāda veida tas ir ja tas ir mājās, birojā utt. Lai to izdarītu, kontrolierim ir jāveic dažas izmaiņas.Lai mainītu kolonnas nosaukumu, mēs kontrolierā rīkojamies šādi: mēs izmantojam display_as (pašreizējais nosaukums, jauns vārds)
$ crud-> kolonnas ('userid', 'property type id', 'price'); $ crud-> display_as ('user id', 'User'); $ crud-> display_as ('property type id', ' Īpašuma veids ');Lai parādītu datus ID vietā, mums tie jānorāda ar set_subjet (saistīta tabula) un set_relation (relāciju id, saistītā tabula, ar lauku saistītā tabula)
$ crud-> set_subject ('lietotājs'); $ crud-> set_relation ('userid', 'users', 'name'); // id ir tā datubāze, kuru es rādu, tas ir, saistība nekustamais īpašums $ crud -> set_relation ('īpašuma_ tips', 'īpašuma_ tips', 'nosaukums');Tālāk mēs atsvaidzinām lapu, lai redzētu izmaiņas ar pievienoto kodu:
Apskatīsim, kā tiek ģenerēta datu reģistrācija vai modifikācija, no tabulas struktūras laukiem tiek ģenerēta datu reģistrācijas veidlapa. Daži var tos konfigurēt atbilstoši datu tipam, citiem mums jānorāda, kāda veida dati un veidlapas elements jāpiešķir.
Mēs redzam, ka teksta tipa lauki kļūst par teksta apgabalu un tiek pievienots spraudnis cfkeditor, mēs to varam redzēt vietnē ckeditor.com, datuma lauki kļūst par datuma atlasītāju, saistītie lauki kļūs par kombinācijām vai nolaižamajiem atlasītajiem elementiem.
Svarīgs aspekts ir tas, kā apstiprināt mūsu reģistrētos datus, tāpēc mums jāizmanto funkcija required_fields (lauks), tāpēc kontrolierim mēs varam pievienot šādu kodu, lai apstiprinātu, ka lauks ir obligāts.
$ crud-> obligāti_lauki ('userid', 'price');Mēs varam arī noteikt, kāda veida datus mēs apstiprināsim, izmantojot funkciju set_rules
$ crud-> set_rules ('cena', 'Nomas cena', 'skaitliska'); $ crud-> set_rules ('e-pasts', 'Lietotāja e-pasts', 'e-pasts');Tādā veidā zem veidlapas sūtīšanas laikā tiks norādīts, vai ir radusies kļūda:
Papildus datiem, kurus mēs varam ievadīt, šajā gadījumā mums ir jāaugšupielādē rekvizītu attēlu faili, tiem mums jāizmanto funkcija set_field_upload ('lauks,' direktorijs '), pēc noklusējuma mēs varam izmantot direktoriju īpašumi / augšupielādes / faili, kas jau ietver grocerycrudPretējā gadījumā mēs varam konfigurēt savu.
$ crud-> set_field_upload ('attēls1', 'aktīvi / augšupielādes / faili'); $ crud-> set_field_upload ('attēls2,' aktīvi / augšupielādes / faili '); $ crud-> set_field_upload ('attēls3', 'aktīvi / augšupielādes / faili'); $ crud-> set_field_upload ('image4', 'aktīvi / augšupielādes / faili');Kā izveidot daudzvalodu datu tīklu
Katalogā / asset / grocery_crud mums ir direktorijs Valodas ar visiem tulkojumiem katrā saskarnes valodā, ko parāda režģis,
Mēs varam doties uz konfigurāciju no direktorijas application / config / grocery_crud.php un norādiet noklusējuma valodu, kuru vēlamies izmantot valodas konfigurācijā.
$ config ['grocery_crud_default_language'] = 'spāņu';Ja mēs vēlamies to darīt dinamiski, piemēram, izvēlnē, lai izvēlētos valodu tīmeklī, mēs pievienojam valodu savam kodam
$ crud-> set_language ("angļu").Funkciju noņemšana no tīkla
Viena no iespējām ir noņemt funkcijas, kuras mēs nevēlamies parādīt, vai atspējot laukus, kurus mēs izmantosim viens komplekts un tās dažādās iespējas unset_add, unset_edit, unset_delete un unset_list
Piemēram, ja mēs izmantojam $ crud-> unset_edit (); rediģēšanas poga netiks parādīta sarakstā, ja mēs to izmantosim $ crud-> unset_texteditor ('apraksts'); tekstam, kas atbilst aprakstam, netiks izmantots spraudnis cfkeditor. Ja mēs vēlamies rādīt tikai sarakstu, nespējot veikt citas darbības, izņemot meklēšanu, mēs izmantojam šo funkciju.
$ crud-> unset_operations ();Kā izsaukt funkciju no notikuma
Grocerycurd ļauj mums apstrādāt atzvanus, tas ir, izsaukt funkciju pirms notikuma, tā laikā vai pēc tā. Daži piemēri. Ja veidlapas ģenerēšanas laikā vēlamies pievienot atzvanīšanu un ietekmēt konkrētu lauku, mēs izmantosim šādu funkciju:
$ crud-> callback_add_field ('e-pasts', masīvs ($ šis, 'krāsas maiņa'));Tad kontrollerī mēs definējam funkciju, kuru mēs izsaucam atzvanīšanas laikā
funkcijas krāsas maiņa () {return '';}Ja mēs vēlamies manipulēt ar jebkuru kolonnu, mēs izmantosim sekojošo:
code $ crud-> callback_column ('cena', masīvs ($ this, 'allocatecurrency')); funkcija allocatecurrency ($ value, $ row) {return $ value. ' € ';}Mēs varam izmantot arī atzvanīšanu pirms datu ievietošanas vai saglabāšanas:
$ crud-> callback_before_insert (masīvs ($ this, 'calc_total));Ir daudz citu notikumu, ar kuriem var atsaukties, un kurus mēs varam apskatīt tīmekļa vietnē Pārtikas preces. Citas utilītas, kas tai ir, ir iespēja eksportēt uz Excel un izdrukāt režģi ar saviem datiem, ja mēs vēlamies pievienot pogu ar papildu funkcionalitāti, piemēram, eksportēšanu uz pdf, mums ir jāmaina katalogā esošās veidnes kods īpašumi \ grocery_crud \ themes \ mypantilla \ views, mūsu izmantotās veidnes direktorijā mēs modificējam failus list_template.php un mēs pievienojam nepieciešamo.Vai jums patika šī apmācība un palīdzējāt tai?Jūs varat apbalvot autoru, nospiežot šo pogu, lai sniegtu viņam pozitīvu punktu