Innehållsförteckning
När vi utvecklar en applikation eller webbsystem behöver vi vanligtvis interagera med databaser. För detta måste vi skapa gränssnitt som gör att vi kan ansluta, lägga till data, redigera eller ta bort det. Denna typ av operation är känd på olika sättCRUD är en förkortning som står för Create, Read, Update and Delete. ABM är en förkortning som står för High, Low och Data Modification. ABCDE är en förkortning som står för Lägg till, Sök, Ändra, Visa (visa eller lista), Radera data.
Varje php -webbutvecklare försöker alltid optimera utvecklingstiden och att göra denna typ av uppgif.webpter kräver mycket tid, till exempel att skapa ett enkelt, stabilt och säkert webbadministrationssystem. Faktum är att det som tar mest tid är att förstå och översätta interaktionskraven med databasen, affärslogiken, modellerna och vyerna för att interagera med varje tabell i databasen till koden.
En lösning i detta fall för CodeIgniter är att använda Grocerycrud -biblioteket, som kommer att ansvara för att generera allt genom att bara konfigurera några parametrar, Den innehåller också css -design, JavaScript, tabeller, formulär, datanät, funktioner, modeller som vi kan använda direkt i vårt system.
Grocery CRUD är ett bibliotek utvecklat i pHp, är gratis programvara och öppen källkod dess licens GPL v3 och MIT. För att kunna använda det måste vi ladda ner biblioteket från http://www.grocerycrud.com/downloads
Efter nedladdning packar vi upp och kopierar filerna
load-> databas (); $ this-> load-> library ('dagligvaru_CRUD');} offentligt funktionsindex () {$ crud = ny matvaru_CRUD (); $ crud-> set_theme ('datatabeller'); $ crud-> set_table ('properties'); $ crud-> columns ('userid', 'property type id', 'price'); $ grid = $ crud-> render (); $ this-> load-> view ('real estate.php', $ grid);}}Vi åberopar databasbiblioteket och biblioteket dagligvarukrud sedan ställer vi in temat eller designen som vi vill använda för rutnätet, vi ställer in tabellen för att visa och vi anger vilka kolumner eller fält som ska visas genom att tilldela fälten i tabellen som vi vill ska visas, vi genererar allt med funktionen framställa () och vi sparar det i en variabel som vi skickar till vyn. Därefter skapar vi den vy som vi kallar fastighetslista.php
I vyn måste vi visa css och js som är nödvändiga för att den ska fungera, platsen för filerna är redan definierad av mallen, i det här fallet bestämde vi oss för att använda mallen databler som vi kan hitta i mallkatalogen:
/ assets / dagligvaru_crud / teman / datatabeller /Om vi testar vår ansökan blir resultatet följande:
FÖRSTORA
För att ändra namnet på en kolumn gör vi följande i kontrollen använder vi display_as (nuvarande namn, nytt namn)
$ crud-> kolumner ('userid', 'property type id', 'price'); $ crud-> display_as ('user id', 'User'); $ crud-> display_as ('property type id', ' Fastighetstyp ');För att visa data istället för id måste vi ange med set_subjet (relaterad tabell) och set_relation (relations -id, relaterad tabell, fältrelaterad tabell)
$ crud-> set_subject ('user'); $ crud-> set_relation ('userid', 'users', 'name'); // id är den i databasen som jag visar, det vill säga förhållandet i fastigheter $ crud -> set_relation ('property_type', 'property_type', 'name');Därefter uppdaterar vi sidan för att se ändringarna med koden vi lade till:
En viktig aspekt är hur vi validerar data som vi registrerar, för detta måste vi använda funktionen required_fields (fält), därför kan vi i kontrollen lägga till följande kod för att validera att ett fält krävs.
$ crud-> required_fields ('userid', 'price');Vi kan också fastställa vilken typ av data som vi ska validera med funktionen set_rules
$ crud-> set_rules ('price', 'Rental price', 'numeric'); $ crud-> set_rules ('email', 'User email', 'email');På detta sätt kommer det att indikera under formuläret när du skickar om det finns ett fel:
$ crud-> set_field_upload ('image1', 'assets / uploads / files'); $ crud-> set_field_upload ('image2,' assets / uploads / files '); $ crud-> set_field_upload ('image3', 'assets / uploads / files'); $ crud-> set_field_upload ('image4', 'assets / uploads / files');
Inne i katalogen / assets / dagligvaru_crud vi har katalogen språk med alla översättningar till varje språk i gränssnittet som rutnätet visar,
Vi kan gå till konfigurationen från katalogen application / config / dagligvaru_crud.php och ange standardspråket som vi vill använda i språkkonfigurationen.
$ config ['grocery_crud_default_language'] = 'spanska';Om vi vill göra det dynamiskt, till exempel genom en meny för att välja språk från webben, lägger vi till språket i vår kod
$ crud-> set_language ("engelska").Ta bort funktioner från nätet
En av möjligheterna är att ta bort funktioner som vi inte vill att ska visas eller inaktivera fält för detta vi kommer att använda en uppsättning och dess olika möjligheter unset_add, unset_edit, unset_delete och unset_list
Så till exempel om vi använder $ crud-> unset_edit (); redigeringsknappen kommer inte att visas i listan, om vi använder $ crud-> unset_texteditor ('beskrivning'); textområdet som motsvarar beskrivningen använder inte plugin -programmet cfkeditor. Om vi bara vill visa en lista utan att kunna utföra någon annan operation än sökning använder vi funktionen.
$ crud-> unset_operations ();Hur man åberopar en funktion från en händelse
Grocerycurd tillåter oss att hantera återuppringningar, det vill säga att åberopa en funktion före, under eller efter att en händelse inträffar. Några exempel. Om vi vill lägga till ett återuppringning när formuläret genereras och påverkar ett visst fält använder vi följande funktion:
$ crud-> callback_add_field ('email', array ($ this, 'color change'));I kontrollen definierar vi sedan den funktion som vi åberopar vid återuppringning
ändring av funktionens färg () {return '';}Om vi vill manipulera någon kolumn kommer vi att använda följande:
kod $ crud-> callback_column ('price', array ($ this, 'allocatecurrency')); function allocatecurrency ($ value, $ row) {return $ value. ' € ';}
$ crud-> callback_before_insert (array ($ this, 'calculate_total));Det finns många andra evenemang för att åberopa återuppringningar som vi kan konsultera på webbplatsen för Livsmedel Crud. Andra verktyg som det har är möjligheten att exportera till excel och skriva ut rutnätet med dess data, om vi vill lägga till en knapp med extra funktionalitet som att exportera till pdf måste vi ändra koden för mallen som finns i katalogen tillgångar \ dagligvaru_crud \ teman \ mypantilla \ vyer, i katalogen för mallen som vi använder ändrar vi filerna list_template.php och vi lägger till det vi behöver.Gillade du och hjälpte denna handledning?Du kan belöna författaren genom att trycka på den här knappen för att ge honom en positiv poäng