Filme porno

Categorii

Advertising

Intelegerea sabloanelor, campurilor si paginilor Processwire

De ce Processwire este ca un CMS / CMF orientat pe obiecte

Camilo Castro

8 iulie 2016 · 5 min citit

Clasa si instantele de catre Wikibooks

Multi sunt derutati de terminologia utilizata de Processwire pentru a descrie modul in care gestioneaza datele si relatiile. Termenii „sablon”, „camp” si „pagina” sunt generici si sunt folositi pe scara larga in alte contexte care nu au legatura cu bazele de date sau arhitectura informatiilor.

In acest articol voi compara terminologia Processwire cu UML si principiile de baza ale Orientarii obiectelor.

Sablon

Sablonul este conceptul mai abstract din Processwire. Este un contract care determina ce se poate face cu oricine adera la contract. In alte CMS sau sisteme, un sablon are legatura doar cu iesirea, vizualizarea, ceea ce utilizatorii vad pe ecran. Dar in Processwire, sabloanele este o clasa care contine proprietati (campuri) si instante (pagini). Un sablon poate avea o iesire asociata pentru redare, cum ar fi html sau json. Dar acest lucru este optional si nu este necesar pentru lucrul cu sabloane. Un sablon este o entitate izolata, ar putea copia campurile dintr-un alt sablon, dar nu puteti face referinte sau mostenire intre sabloane.

Array

Campuri

Campurile sunt ca proprietatile sau atributele unui sablon (clasa). Un camp ar putea contine containere simple de informatii precum „nume de utilizator” sau relatii complexe intre pagini (obiecte).

Pagini

Pagini sunt instantele unui sablon (clasa). Acestea contin informatiile specifice stocate in fiecare camp (proprietate). Exemplu: o pagina care adera la un sablon (clasa, contract) „utilizator”. Acest sablon are campul (proprietate, atribut) „nume”. Apoi pagina poate stoca informatii in campul „nume”, cum ar fi „camilo123”. O pagina poate adera doar la un singur sablon. Similar cu mostenirea unica in limbaje de programare.

Metoda de redare a sablonului

Fiecare sablon are o metoda „render” mostenita de clasa sa parinte.

Aceasta metoda este numita numai atunci cand un fisier cu acelasi nume ca sablonul este prezent in sistemul de fisiere de la site / templates / . Exemplu site / templates / user.php. Puteti suprascrie acest comportament cu usurinta folosind administratorul Processwire si alte tehnici, dar nu intra in sfera acestui articol. Metoda de redare contine un continut agnostic, puteti arunca html, json, pdf, zip etc. Fisierele asociate cu sabloanele din sistemul de fisiere sunt doar fisiere php, deci pot fi redate folosind arhitecturi php complexe sau simple. Cand un sablon este „redat”, acesta va folosi informatiile continute in pagina care adera la acel sablon si apartine rutei solicitate.

Exemplu: O masina simpla

Vom folosi Masina ca exemplu simplu.

In acest sablon simplu (clasa) numit „CarTemplate” avem doua campuri (proprietati): culoare si maker. Clasa are o metoda de redare care genereaza continut ca html. Aceasta clasa are doua pagini (obiecte, instante) care vor reda html cu Red, Audi si White, VolksWagen ca continut pentru fiecare pagina.

Iata un articol Wikipedia pentru mai multe informatii despre Orientarea obiectelor si clase.

Cum sa creati un site Processwire

Urmatoarele sfaturi descriu metodologia mea inainte de a crea un nou site web sau aplicatie care utilizeaza Processwire. Simtiti-va liber sa adaptati aceste idei la propriul context. In acest exercitiu vom realiza un site simplu pentru o colectie de carti.

Pe masura ce Processwire gestioneaza relatiile dintre pagini ca un copac. Mai intai ma duc la editorul meu de text simplu preferat si creez un arbore simplu.

Acasa – Autori – HP Lovecraft

— Chemarea lui Cthulhu – Mark Twain

— Printul si saracul

Folosind aceasta abordare, pot vedea relatiile si sabloanele de care vom avea nevoie.

Mai intai avem nevoie de un sablon de lista de autori care sa contina autorii, un sablon de autor care sa contina informatiile despre autor si, in cele din urma, un sablon de carte care sa contina informatiile despre carte.

Folosind un instrument UML precum Astah putem realiza o diagrama simpla de clasa.

Toate clasele au o metoda render (): html . Asta inseamna ca vor avea un fisier in directorul site / templates / care va reda continutul paginii ca html. Daca omitem aceasta metoda, inseamna ca sablonul va fi utilizat numai pentru stocarea informatiilor si nu pentru redare. De asemenea, clasa „carte” are o proprietate speciala. O serie de imagini.

Acum trebuie sa cream relatiile dintre clase. Iata cateva informatii UML pentru relatiile de clasa.

Diagrama spune ca zero sau mai multe „autor” apartine doar unei „liste de autori” si daca „lista de autori” este stearsa, toti autorii vor fi sterse si ei. (relatia de compozitie). Pentru carti se spune ca un „autor” ar putea avea zero sau mai multe „carti” si, daca „autorul” este sters, obiectele „carte” vor fi sterse si ele.

Cu aceste informatii putem sti de ce sabloane avem nevoie si cum se leaga intre ele si arborele de pagini pe care le va crea. Acum puteti utiliza modelul de redare a firelor sau o alta tehnica care va place pentru crearea site-ului.

Conventii

Urmatoarele conventii sunt utile pentru crearea de diagrame de clasa care vor fi utilizate pentru crearea site-urilor Processwire.

Numele sabloanelor

Folosind administratorul Processwire, este mai usor sa denumiti sabloanele cu litere mici si cu liniuta separata intre cuvinte. In acest fel va fi acelasi cu fisierul din sistemul de fisiere. Pentru liste complexe, denumirea sa utila cu lista de sufixe si copiii sai ca exemplu de lista-articol : lista-autor, lista-autor-element.

Tipuri de camp

Urmatoarele tipuri vor fi utilizate pentru crearea diagramelor de clasa:

  • String = TextField
  • Text = TextArea
  • Bool = Caseta de selectare
  • Image = ImageField
  • Int = IntegerField
  • Float = FloatField
  • Data = DataField

Campuri de repetare

Repetorul este un caz special, dar trebuie doar sa mosteneasca din clasa „Repetator”. Si poate fi folosit ca o alta relatie de pagina. Prefer sa gestionez relatia dintre pagini ca relatie compusa si relatia dintre repetori ca relatie de agregare.

O carte poate avea mai multe editii, dar aceasta nu va fi reprezentata in arborele paginii cartii, deoarece se afla intr-un camp repetor. Prefer sa folosesc relatii de compozitie pentru relatii la nivel de pagina si relatii de agregare pentru campuri repetate si altele care nu fac modificarea directa a arborelui paginii.

Concluzie

Anumite documente si inginerie inainte de a crea un site Processwire ne-ar putea ajuta foarte mult si ne vor economisi timp pe termen lung. Si ne ajuta sa colaboram cu alti colegi daca suntem in interiorul unei echipe sau intelegem ce am facut luni de zile dupa ce proiectul a fost finalizat.

Facut cu dragoste de Ninjas.cl

Video Description:

De ce Processwire este ca un CMS / CMF orientat pe obiecteCamilo Castro8 iulie 2016 · 5 min cititClasa si instantele de catre WikibooksMulti sunt derutati de terminologia utilizata de Processwire pentru a descrie modul in care gestioneaza datele si relatiile. Termenii „sablon”, „camp” si „pagina” sunt generici si sunt folositi pe scara larga in alte contexte care nu au legatura cu bazele de date sau arhitectura informatiilor.In acest articol voi compara terminologia Processwire cu UML si principiile de baza ale Orientarii obiectelor.SablonSablonul este conceptul mai abstract din Processwire. Este un contract care determina ce se poate face cu oricine adera la contract. In alte CMS sau sisteme, un sablon are legatura doar cu iesirea, vizualizarea, ceea ce utilizatorii vad pe ecran. Dar in Processwire, sabloanele este o clasa care contine proprietati (campuri) si instante (pagini). Un sablon poate avea o iesire asociata pentru redare, cum ar fi html sau json. Dar acest lucru este optional si nu este necesar pentru lucrul cu sabloane. Un sablon este o entitate izolata, ar putea copia campurile dintr-un alt sablon, dar nu puteti face referinte sau mostenire intre sabloane. Array CampuriCampurile sunt ca proprietatile sau atributele unui sablon (clasa). Un camp ar putea contine containere simple de informatii precum „nume de utilizator” sau relatii complexe intre pagini (obiecte).PaginiPagini sunt instantele unui sablon (clasa). Acestea contin informatiile specifice stocate in fiecare camp (proprietate). Exemplu: o pagina care adera la un sablon (clasa, contract) „utilizator”. Acest sablon are campul (proprietate, atribut) „nume”. Apoi pagina poate stoca informatii in campul „nume”, cum ar fi „camilo123”. O pagina poate adera doar la un singur sablon. Similar cu mostenirea unica in limbaje de programare.Metoda de redare a sablonuluiFiecare sablon are o metoda „render” mostenita de clasa sa parinte. film porno entier wines.tracewap.com porno ejaculation interne motortruckpaclease.com kelly vedovelli porno h4l.aklatan.net animaux porno rivedette.onlinecampaigncenterrs.org new porno profiwm.com porno gay dad calientecasinoresorts.com video porno perfect alltangledup.com porno avec des animaux getmeatable.cc porno insolite www.linneamccord.com porno xvideo airbarcelona.com porno hut bezra.com porno père fille worldfootballchampionships.com porno en foret ference.net dragon ball porno ww6.aitsafe.com voglio porno aty.k-m-meatco.com heure porno epersia.com porno rigolo tracking.neverclaimed.com vrai porno www.customhabitats.net porno espanol www.widexusa.biz porno gay hetero company3.info Aceasta metoda este numita numai atunci cand un fisier cu acelasi nume ca sablonul este prezent in sistemul de fisiere de la site / templates / . Exemplu site / templates / user.php. Puteti suprascrie acest comportament cu usurinta folosind administratorul Processwire si alte tehnici, dar nu intra in sfera acestui articol. Metoda de redare contine un continut agnostic, puteti arunca html, json, pdf, zip etc. Fisierele asociate cu sabloanele din sistemul de fisiere sunt doar fisiere php, deci pot fi redate folosind arhitecturi php complexe sau simple. Cand un sablon este „redat”, acesta va folosi informatiile continute in pagina care adera la acel sablon si apartine rutei solicitate.Exemplu: O masina simplaVom folosi Masina ca exemplu simplu.In acest sablon simplu (clasa) numit „CarTemplate” avem doua campuri (proprietati): culoare si maker. Clasa are o metoda de redare care genereaza continut ca html. Aceasta clasa are doua pagini (obiecte, instante) care vor reda html cu Red, Audi si White, VolksWagen ca continut pentru fiecare pagina.Iata un articol Wikipedia pentru mai multe informatii despre Orientarea obiectelor si clase.Cum sa creati un site ProcesswireUrmatoarele sfaturi descriu metodologia mea inainte de a crea un nou site web sau aplicatie care utilizeaza Processwire. Simtiti-va liber sa adaptati aceste idei la propriul context. In acest exercitiu vom realiza un site simplu pentru o colectie de carti.Pe masura ce Processwire gestioneaza relatiile dintre pagini ca un copac. Mai intai ma duc la editorul meu de text simplu preferat si creez un arbore simplu.Acasa - Autori - HP Lovecraft --- Chemarea lui Cthulhu - Mark Twain --- Printul si saraculFolosind aceasta abordare, pot vedea relatiile si sabloanele de care vom avea nevoie.Mai intai avem nevoie de un sablon de lista de autori care sa contina autorii, un sablon de autor care sa contina informatiile despre autor si, in cele din urma, un sablon de carte care sa contina informatiile despre carte.Folosind un instrument UML precum Astah putem realiza o diagrama simpla de clasa.Toate clasele au o metoda render (): html . Asta inseamna ca vor avea un fisier in directorul site / templates / care va reda continutul paginii ca html. Daca omitem aceasta metoda, inseamna ca sablonul va fi utilizat numai pentru stocarea informatiilor si nu pentru redare. De asemenea, clasa „carte” are o proprietate speciala. O serie de imagini.Acum trebuie sa cream relatiile dintre clase. Iata cateva informatii UML pentru relatiile de clasa.Diagrama spune ca zero sau mai multe „autor” apartine doar unei „liste de autori” si daca „lista de autori” este stearsa, toti autorii vor fi sterse si ei. (relatia de compozitie). Pentru carti se spune ca un „autor” ar putea avea zero sau mai multe „carti” si, daca „autorul” este sters, obiectele „carte” vor fi sterse si ele.Cu aceste informatii putem sti de ce sabloane avem nevoie si cum se leaga intre ele si arborele de pagini pe care le va crea. Acum puteti utiliza modelul de redare a firelor sau o alta tehnica care va place pentru crearea site-ului.ConventiiUrmatoarele conventii sunt utile pentru crearea de diagrame de clasa care vor fi utilizate pentru crearea site-urilor Processwire.Numele sabloanelorFolosind administratorul Processwire, este mai usor sa denumiti sabloanele cu litere mici si cu liniuta separata intre cuvinte. In acest fel va fi acelasi cu fisierul din sistemul de fisiere. Pentru liste complexe, denumirea sa utila cu lista de sufixe si copiii sai ca exemplu de lista-articol : lista-autor, lista-autor-element.Tipuri de campUrmatoarele tipuri vor fi utilizate pentru crearea diagramelor de clasa:String = TextFieldText = TextAreaBool = Caseta de selectareImage = ImageFieldInt = IntegerFieldFloat = FloatFieldData = DataFieldCampuri de repetareRepetorul este un caz special, dar trebuie doar sa mosteneasca din clasa „Repetator”. Si poate fi folosit ca o alta relatie de pagina. Prefer sa gestionez relatia dintre pagini ca relatie compusa si relatia dintre repetori ca relatie de agregare.O carte poate avea mai multe editii, dar aceasta nu va fi reprezentata in arborele paginii cartii, deoarece se afla intr-un camp repetor. Prefer sa folosesc relatii de compozitie pentru relatii la nivel de pagina si relatii de agregare pentru campuri repetate si altele care nu fac modificarea directa a arborelui paginii.ConcluzieAnumite documente si inginerie inainte de a crea un site Processwire ne-ar putea ajuta foarte mult si ne vor economisi timp pe termen lung. Si ne ajuta sa colaboram cu alti colegi daca suntem in interiorul unei echipe sau intelegem ce am facut luni de zile dupa ce proiectul a fost finalizat.Facut cu dragoste de Ninjas.cl

Categorie:
Taguri:
Data adaugarii: