Kategorija: Zend Framework

Zend Framework už modulių nustatymai

, penktadienis sausio 1 d. 2010 10:40 pm

Aš sukūriau followup į šį pranešimą, kuris reikalauja mažiau konfigūracijos, žr modulis pagrįstas išdėstymas - Zend Framework .

Jei naudojate Zend Framework moduliai, akivaizdu, kad, jei jūs naudojate įvairius (sub-) svetaines ne ta pati paraiška, jūs nebūtinai nori to paties išdėstymo scenarijus kiekvienai daliai. Aš nusprendė eiti su svetainės struktūrą:

  / Taikymas
     / Valdikliai
         ...
     / Modelių
     / Moduliai
         / Nutylėjimą
             / Valdikliai
             / Išdėstymas
                 / Scenarijus
             / Peržiūros
                 / Scenarijus
         / AnotherModule
             ...
     / Scenarijus

Problema buvo įsteigti už modulių išdėstymo scenarijus. Atsakymas atėjo naudojantis veiksmų padėjėjas. Už modulių maketai nustatymas apima tris žingsnius:

  1. Application.ini (ar panašios konfigūracijos setup):
      admin.resources.layout.layoutPath = APPLICATION_PATH "/ modulių / admin / maketų / scripts"
     default.resources.layout.layoutPath = APPLICATION_PATH "/ modules / default / maketų / scenarijai"
     member.resources.layout.layoutPath = APPLICATION_PATH "/ modules / member / maketų / scenarijai"
     affiliate.resources.layout.layoutPath = APPLICATION_PATH "/ modules / partnerių / maketų / scenarijai" 
  2. Sukurkite savo veiksmų Helper:
      <? Php
     / **
      * Nustato už modulių išdėstymo kelią
      *
      * @ Author Lloyd Watkin <lloyd@evilprofessor.co.uk>
      * @ Nuo 2010/1/1
      * /
     klasės Pro_Controller_Action_Helper_SetLayoutPath
         išplečia Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Nustato modulis pagrįstas išdėstymas kelias
          * /
         viešoji funkcija preDispatch ()
         {
        	 $ Module = $ this-> getRequest () -> getModuleName ();
    
    	     jei ($ bootstrapu = $ this-> getActionController ()
    	                        -> GetInvokeArg (bootstrapu ")) {
    
    	         $ Config = $ bootstrapu> getOptions ();
    
    	         if (isset ($ config [$ modulis] ['išteklių'] ['išdėstymas'] ['layoutPath'])) {
    	             $ LayoutPath =
    	                  $ Config [$ modulis] ['išteklių'] ['išdėstymas'] ['layoutPath'];
    	             $ This-> getActionController ()
    	                  -> GetHelper (išdėstymas ")
    	                  -> SetLayoutPath ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. Ir galiausiai boostrap veiksmų pagalbininkas:
      ...
         / **
          * Nustato už modulių išdėstymas scenarijus
          * /
         protected function _initLayoutHelper ()
    	 {
    	     $ This-> bootstrapu (frontController ");
    	     $ Išdėstymas = Zend_Controller_Action_HelperBroker: addHelper (
    	         naujas Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 

Doktrina: DATETIME default ()

Autorius , trečiadienis 30 dieną Gruodis 2009 m. 6:30 pm

Aš jau kovoja su duomenų bazės naują Zend Framework projekto. Aš esu naudojant bando naudoti doktrinos ORM savo duomenų bazės modeliai. Man reikia schemos, kad jis leido man nustatyti `datetime` stulpelio numatytąją datą ir laiką, pavyzdžiui, kai pridedate naują pranešimą gaunu dabartinę laiko žymos. Po daug ieškoti ir eksperimentuoti Radau sprendimas, todėl aš dalintis.

Savo schemą YAML failą, tiesiog atlikite šiuos veiksmus :

 Žinutė:
   Actas:
     Timestampable:
       Sukurta:
         pavadinimas: created_at
         tipo: timestamp
         formatas: YMD H: i: s
       atnaujintas:
         vardas: last_updated
         tipo: timestamp
         formatas: YMD H: i: s
   stulpeliai:
     ID:
       Tipas: integer
       pirminio: true
       autoincrement: tiesa
     vardas: string (255)
     elektroninio pašto adresas: string (300)
     pranešimas: string (2000)

Jei, kita vertus, jūs nenorite "updated_at" stulpelyje galite naudoti taip:

 Žinutė:
   Actas:
     Timestampable:
       Sukurta:
         pavadinimas: created_at
         tipo: timestamp
         formatas: YMD H: i: s
       atnaujintas:
         neįgaliesiems: tiesa
   stulpeliai:
     ID:
       Tipas: integer
       pirminio: true
       autoincrement: tiesa
     vardas: string (255)
     elektroninio pašto adresas: string (300)
     pranešimas: string (2000)

Zend Framework: Pagrindai - apžvalga

, šeštadienis 28 lapkričio 2009 10:42 pm

Neseniai mano darbdavys moka mums kūrėjų grupė Zend Framework: pagrindai Žinoma, čia aš apibendrinti savo mintis ir nuomones kitiems. Tiems, kurie nori sutaupyti laiko, čia mano santrauka:

Kūrėjai, kurie neturėjo laiko pažvelgti į šio kurso (Zend Framework: pagrindai) siūlo gerą bendrą vaizdą apie sistemą, įvesti jus į pagrindines sritis ir suteikti pakankamai informacijos, kad toliau Zend Framework. Tiems, kurie praleido laiko žiūri sistemą ir po vieną ar dvi samouczków šio kurso neturi pasiūlyti daug daugiau nei .

Fonas

PHP programuotojo apie 5-6 metus, ir pradėjo dirbti su Zend Framework komponento pagrindu per pastaruosius 6 mėnesius. Aš sukūriau ir / arba buvo pora mažų Zend Framework kūrėjas MVC sites. aš būsiu sąžiningas, aš neturėjo didžiulio poveikio kitų sistemų, kodavimo požiūriu, bet praleido keletą valandas tiria projekto svetainę ir vertinimo them. sistema ir bendruomenės aplinkinių Zend Framework, tai yra gana įdomi ir, atrodo, būti milžiniškas galimybes, kai jos vyksta.

Apie kursą

Žinoma, yra pristatoma per 9 dvi valandos WebEx sesijose (per vidurį) 10 minučių pertrauką. Laiko praleido išgyvena Zend skaidrių diskusiją bet kuriuo metu. Galite naudoti mikrofoną kalbėti instruktorius, tačiau turi būti sąžiningas, aš nemačiau, kad kas nors naudoti nieko daugiau nei pokalbių lange. Be to VMware Ubuntu mašina su sąlyga, kad pavyzdžiui kodą ir projektams bandomoji versija Zend Studio. Žinoma lyderis derybų dalyviams, tiek per integruota VoIP tirpalas, arba galite surinkti naudojant vieną iš daugelio visame pasaulyje surinkti skaičiai.

Kursų metu medžiagos sudaro trumpa apžvalga pagrindų, MVC modelį, prieš antraštę į svečių knygoje taikymo pavyzdį. Diskusija parodė bootstrapping, Zend_Application, DB lenteles, prieigą prie duomenų bazės, formos, filtravimas, ACL, patvirtinimas ir tt, ir tt Iš esmės apimanti visas temas norite gauti pagrindinę svetainę up veikti visą laiką, suteikia jums įrankius eiti ir gauti daugiau pažangių sistemą (nors tai suma "svetainės" daug laiko).

Laikas kai kuriuos pavyzdžius, kodą ir kurti "svečių knygoje" ir paprasta "wiki". Asmeniškai aš pajuto, kad teikiant kodą arba kiekvieno app ir tada klausia mums plėtoti esmės yra kopija, kartu su nelabai gera mokymosi patirtis. Būčiau norėjusi sukurti taikymo panašių, bet ne identiški. Pavyzdžiui taikymo vadovas nurodyti naudos. Arba kurti programas nuo nulio parodomasis, galbūt buvo daugiau klausimų apie tai, kodėl ir kaip, ir tokiu būdu geriau suprasti sistemą, juk galite ieškoti po kurso specifiką.

Paskutinė paskaita sudarė darbo wiki pagalbos / patarimų instruktorius. Po kurso atsiliepimus buvo imtasi, buvo pabrėžta kelis kartus per Žinoma, kad Zend atsiliepimus labai rimtai, tai, matyt, mūsų kurso versija buvo gana naujas. Kai kurie kitų kūrėjų bendrovė bus žinoma, greičiau, todėl bus įdomu pamatyti, jei tai nutiko.

Žinoma stilius buvo neoficialiai leido grįžtamojo ryšio ir bendradarbiavimo tarp dalyvių ir instruktorius. Kurso vadovas buvo draugiškas, prieinamas (elektroninio pašto adresai buvo dalijamasi klausimai), ir nors jo pristatymą iš skaidrių buvo šiek tiek įtartina atrodė visiškai kompetentinga sistemą. Jis buvo aiškiai kažkas, kas naudojama sistema reguliariai, o ne kažkas, kas mokoma dėstyti kursą, man patiko "realiame pasaulyje" patirtį šiuo atžvilgiu.

Bendras jausmas

Tam tikrais būdais radau Žinoma, laiko švaistymas, kitiems tai buvo labai patogu. Tikiuosi gausite mano priežastis visoje aiškiai, o gal kai kurie maisto minties ar naudingų atsiliepimų (žinant, man tai mažai tikėtina!).

Už save Šio kurso tikslas buvo per žemas. Atsižvelgdama išgyveno Quickstart vadovas, skaityti Rob Allen veiksmų, Zend Framework, ir dirbo su sistema, šiek tiek aš tikrai ne gauti ką nors per daug. Norėčiau patiko kurso pasiimti iš Quickstart pabaigos ir sukurti papildomų įgūdžių.

Tai sakė, Modulio pavadinimas aiškiai nurodoma "Zend Framework: pagrindai" ir šiuo aspektu kursas pasiekia kas tai padaryti. Kiti nariai plėtros komanda, kurios nėra praleido laiką ieško į sistemą kiekvieną sesiją baigė su entuziazmu ir paprašė klausimus, kurie buvo tikrai malonu matyti.

Visi nebuvo prarastas, jis buvo gerai praleisti laiką, patvirtinantis, pagrindinė informacija sistemą ir gauti užduoti porą klausimų srityse, kur buvau ne 100%. Tai buvo laikas, kad aš kiekvieną dieną turime susėsti ir galvoti apie kodavimo sistemą ir būsimus projektus, naudojant ką aš nebūtų galėjo padaryti kitaip (galite įsivaizduoti, jūsų įmonė sutinka, kad:)). Paskutinis, bet ne mažiau kaip jūs taip pat gauti gražus iš Zend sertifikatas pasakyti, kad jūs dalyvavo kursą (nors ir elektroniniu paštu).

Zend Framework, sertifikavimas

Tai buvo vienas klausimas nuolat ateina į galvą kurso metu, tai pasirengti sertifikavimo manęs? Greitai, lengvai, yra aidėjimas Nr . Žinoma instruktorius buvo gana aišku, kad su papildomų patarimų, kad sertifikavimo jums tikrai turėtų būti naudojant kasdien ir jaučiasi labai patogiai ir užtikrintai, jo naudojimas ir metodikos.

Santrauka

Atsižvelgiant į viską, ką aš parašiau aukščiau, aš apibendrinti viską, kas dvi lengva kulka taškų:

  • Nauja Zend Framework: Šis kursas daro būtent tai, ko jūs tikitės, ji suteikia jums gražus įvadas į sistemą ir gerą įžeminimo pagrindus, iš kurių galite statyti. Žinoma atrodo generuoti susidomėjimą ir entuziazmą tarp kūrėjų.
  • Naudota Zend Framework: Nors jis buvo gražus kranto, kai iš pačių pagrindų, jaučiau, laiko, pastangų ir lėšų, žinoma, negalėjo geriau išleisti kitur. Jis bus malonu see Zend sukurti naują aukštojo lygio kursas imtis kūrėjams į kitą lygį - bent standartas sertifikavimo ir už jos ribų, kad aš tuoj pat užsiregistruoti .

Prisijungti prie BP naudojant Zend Framework

, 2009 m. balandžio 14d, antradienis 9:06 pm

Aš sugebėjo gauti svetainėje ir veikia su Zend Framework , viskas prisijungti gražiai Firebug / FirePHP Kitas žingsnis buvo prisijungti prie DB. Aš taip pat noriu prisijungti tam tikrą papildomą informaciją, naudojant sistemą, tokių kaip vartotojo tarpininkas, datą ir laiką, GET ir POST kintamieji. Taigi, norint pratęsti vadovą, mažai čia ką aš padariau:

// Set up logging to DB
$db = Zend_Registry ::get('dbAdapters');
$db = $db['general'];

$ ColumnMapping = array ("prioritetas" => "prioritetu",
"Laišką '=>' žinutę,
'Datetime' => 'timestamp ",
"User_agent '=>' user_agent",
"Get_vars '=>' get_vars"
"Post_vars '=>' post_vars"
"Vieta" => "svetainėje"
);

$ WriterDb = nauji Zend_Log_Writer_Db ($ db "error_logging", $ columnMapping);
$ Logger = nauji Zend_Log ($ writerDb);

$ Logger-> setEventItem ('datetime', date ("YMD H: i: s"));
$ Logger-> setEventItem ("user_agent, $ _SERVER ['HTTP_USER_AGENT']);
$ Logger-> setEventItem (get_vars ", print_r ($ _GET, tiesa));
$ Logger-> setEventItem (post_vars ", print_r ($ _POST, tiesa));
$ Logger-> setEventItem ("Svetainė", svetainės);

$ Logger-> info ("Informacinė žinutė");

Jei masyvo raktus $ columnMapping mano stulpelių pavadinimus. "Prioritetas" ir "žinutė" yra suprantama Zend_Log_Writers , bet buvo pridėta papildomų laukų duoti man šiek tiek papildomos informacijos.

Suprantama, tai daroma prielaida, kad jūs turite prisijungti naudojant vieną iš kitų rašytojų pirma darbo:)













Panorama tema pagal Themocracy

6 lankytojai internete dabar
2 svečiai, 4 reklaminių žinučių, 0 nariai
Maksimalus lankytojų šiandien: 14 at 05:51 pm UTC
Šį mėnesį: 48 2011/12/09 02:18 am UTC
Šiais metais: 130 28-03-2011 10:40 am UTC
Visą laiką: 130 28-03-2011 10:40 am UTC