Tabele personalizate în revoluție modă

clarifica imediat: această metodă este cea mai potrivită pentru incepatori, dar pentru cei care într-un fel să înoate cu SQL, pentru că dacă nici măcar nu știu cum să creați etichete prin intermediul Import Import phpMyAdmin, trebuie mai întâi să-l examineze baze de date MySQL și să învețe cum să creeze etichete și pur și simplu a scrie SQL- cereri, și numai atunci aici.







Încă clarificare: mulți cred că este corect să creezi manual XML cu o descriere a bazei de date și apoi de la ea pentru a genera obiectele finale. Nu voi contesta asta. Dar aceasta este o procedură mai complicată, și personal nu am avut nevoie de ea niciodată. Considerăm că o metodă mai simplă: crearea tabelelor direct în baza de date, și apoi a genera un script de obiecte finite și XML cu descrierea modelului, care, de altfel, puteți termina deja conexiunea generează manual tabele și au obiecte cu constrângeri.

Deci, sarcina: creați propriile tabele și puteți să le formați interogări prin intermediul xPDO și API MODX. Aceasta este, de exemplu, să creați un tabel modx_mypackage_my_table și apoi să aveți capacitatea de a efectua acest tip:

Cred că sarcina este clară pentru toți.

Acum, o teorie puțin generalizată despre ce și cum trebuie să facem. 1. Creați tabelele necesare în baza de date prin phpMyAdmin (sau cine îl folosește pentru a lucra cu baza de date). Doar imediat, rețineți că pentru a fi fără gemor, prefixele pentru tabele ar trebui să fie setate diferit de prefixele MODX. De exemplu, dacă MODX are prefixul modx_, atunci specificați modx_myprefix_ sau orice altceva. 2. Generați scriptul cu modelul final cu clasele de fișiere. 3. Înainte de a executa interogări către obiecte sau conectăm pachetul prin $ modx-> addPackage () sau prin metoda descrisă aici. 4. Totul, puteți lucra cu obiecte.

În acest articol vom discuta următoarele întrebări:

Crearea de tabele personalizate pentru MODx Revolution.

Generați fișiere XML și fișiere de clasă php pentru xPDO.

Lucrul cu tabelele utilizatorilor.

Una dintre cele mai mari provocări în tranziția de la Evoluție la Revoluție este xPDO IMHO. La urma urmei, de îndată ce a fost simplu: a intrat în mușchi prin intermediul Import Import phpMyAdmin, am făcut un semn, și să lucrați cu ea, trimiterea pur SQL-interogări prin $ modx-> db. Acum, orice modificare a bazei de date nu deranjează prea mult modx-ul, cu excepția unei picături complete de tabele etc. Cum sunt conectate xPDO și MODx (sau mai degrabă $ modx), am scris aici. Mi se pare dificil să lucrez cu mesele personalizate în MODx Revolution - un obstacol considerabil pentru mulți programatori. Dar, de fapt, totul nu este atât de dificil. Întregul algoritm considerat mai jos este în trei cuvinte:







De asemenea, prin phpMyAdmin (sau un alt instrument convenabil folosit), creăm tabelele de care avem nevoie

Folosind codul de mai jos, generăm fișierele necesare pentru xPDO

Utilizând metoda de $ modx-> addPackage () este încărcat în locul potrivit, la noua clasă și sunt deja de lucru cu mesele noastre prin metode $ modx-> getObject (), $ modx-> getCollection (), etc.

Deci, codul de care avem nevoie pentru a genera fișiere (sursa aici):

Completați acest fișier cu serverul, înregistrați corect căile spre configurația MODx și directoarele unde vor fi create fișierele generate. Accesăm fișierul prin browser. Ca rezultat, trebuie creat un fișier xml în dosarul specificat, în care vor fi descrise tabelele noastre și fișierul php. Aceste fișiere, dacă este necesar, pot fi mutate într-un alt dosar în care decideți să păstrați noua clasă. În viitor, aceste fișiere vor fi întotdeauna necesare pentru a lucra cu mesele lor.

Acum poți lucra cu mesele tale. Pentru a înțelege mai bine mecanismul de interacțiune xPDO cu schema XML, precum și pentru a înțelege ceea ce este prescris în generatorul de fișiere, și care obiecte ajunge la ieșire, am cita nota pe această temă. Sincer, la început fără ea nu a existat pur și simplu nici un fel ...

1. Conectarea pachetelor și executarea cererilor în cadrul sistemului

1.1 Recuperarea înregistrărilor dintr-un tabel

Primul lucru pe care trebuie să-l faceți este să aflați ce aveți nevoie pentru a aplica la sistem. Pentru a face acest lucru, vom studia fișierul XML. Iată blocul principal al schemei pe care am creat-o:

Cel mai important lucru de care avem nevoie aici este:

valoarea pachetului de atribute trebuie să știm ce pachet trebuie în general să încărcați. În acest caz este testtbl. Vom numi pachetul astfel:

Să examinăm mai atent parametrii. $ pachet. Numele pachetului. În cazul nostru, doar testtbl $ calea. Calea către directorul pachet (în care există un fișier XML și un dosar numit Obiect, în care toate fișierele PHP) prefixul $. Dacă ați specificat un prefix diferit de cel implicit la crearea schemei, trebuie să o specificați.

Există un mic truc, cum să determinăm cu precizie prefixul necesar. Formula: $ prefix = $ fullTableName - $ tableName; Aici $ fullTableName este numele complet al tabelului bazei de date pe care îl accesăm, $ tableName este valoarea tabelului tabelului





Articole similare

Trimiteți-le prietenilor: