Posts tagged: kuadri

"Sign in me Twitter" duke përdorur Zend Kornizë

Nga , e enjte 17 Mars 2011 1:07 am

Përkundër të gjitha të urrejtjes eksitim në këtë moment, unë kam vendosur për të krijuar një të ri twitter aplikimit bazë. Duke qenë dikush që menaxhon disa llogari (të dyja personale dhe për punën time bamirëse) Unë kam qenë që kanë nevojë për një mjet për diku që unë jam vetëm duke marrë rreth për shkrim (më shumë se në të ardhmen e afërt ...).

Unë e kam lexuar deri në Zend_Oauth_Consumer dhe se si ajo mund të përdoret për të marrë autorizimin për të bashkëveprojmë me eksitim përdorur oauth . Të gjitha të mirë dhe të mirë, unë kam çelësin tim qasje dhe unë mund të postoni larg gëzim në emër të përdoruesit. Ka shumë burime atje për të bërë këtë kështu që unë nuk do të mërzitin njerëzit.

Hapi tjetër ishte që të lejojnë njerëzit që të kthehen në faqen e internetit, hyni në dhe të modifikojë llogarinë e tyre. Kjo është ajo ku unë arriti në një problem të vogël. Duke përdorur shembuj kodin në faqet e internetit do të thotë se unë do të keni twitter kërkuar mua për autorizim të qasjes përsëri për çdo login, nuk është e mirë. Duke analizuar me anë të kornizës Unë nuk mund të gjykojnë asgjë që do të lejonte mua të vetëm të kërkojnë mirëfilltësim. Kjo nuk do të thotë se nuk e saj, por atje nuk duket të jetë një mekanizëm të legalizuara që mund të përdoret pa e ditur shenjë qasje tashmë.

Alternativat ishin për të zbatuar një regjistër Për Site-e të bazuar në një farë mënyre apo dyqan shenjë e përdoruesit qasje në klient (Encrypted natyrisht). Asnjë nga këto dukej si një zgjidhje të mirë / të përshtatshme.

"Sign in me Twitter" duke përdorur Zend Kornizë 'VAZHDIM leximin »

Zend Kornizë: Render nëse ekziston

Nga , e Diel Dhj 12, 2010 4:19 pm

Përmbledhje

Kjo është një post të shpejtë për të diskutuar ndihmues në vend të thjeshtë view I krijuar për të bërë një Kornizë Zend stil skedar pamje vetëm nëse ajo ekziston. Në përgjithësi duke i kërkuar kodin për të marrë një skedar që nuk ekziston do të hedh një përjashtim. Prandaj unë krijuar një këmishë për Zend_View :: bëjnë () metodë që përcaktohet nëse dosja ekziston dhe nëse po bën, ndryshe thjesht kthen një varg bosh.
Vazhdo leximin 'Zend Kornizë: Render nëse ekziston' »

Zend Kornizë Tag Trupi View Helper

Nga , e shtunë 21 gusht 2010 11:13 pm
Photo from  http://www.flickr.com/photos/daniello/

Foto nga http://www.flickr.com/photos/daniello/~~pobj

Përmbledhje

Këtu unë të diskutuar krijimin e një ndihmës pamje për modifikimin tags HTML dhe më konkretisht tags trupit. Ai që ndihmon krijuar pamje lejon funksionalitet të ngjashëm me të * Shefi / ndihmës e inlineScript Shiko tashmë në standarde Zend Kornizë ndihmësve pamje, por lejon modifikimin programatike e atributeve tag. Definitely shikoni faqen demo dhe kodin për Github.

Motivimi

Standard në Zend Framework view ndihmëtarë janë një grup i madh i mjeteve për riorganizimin e detyrave të kësaj bote e shohin dhe e lejuar për modifikimin / shtimin e Scripts dhe blloqe header (i mbajtur në përgjithësi në layout) nga brenda mendimit pa aplikuar hacks shëmtuar (p.sh. kreu * / ndihmëtarë inlineScript view).

Me rastin e kam gjetur nevojën për të bërë modifikime në tag <body>, për shembull duke shtuar një onload , të klasës, apo atribut stil etj I kërkohet gjithashtu të jetë në gjendje për të kryer këtë nga brenda ndihmësve të tjera pamje. Merrni këtë shembull vijues ndërtuar ...

Nga X website, disa faqe të përfshijë standarde dojo forma. Këto forma dojo mbahen brenda ndihmësve view për lehtësi. Përgjithësisht ajo ka qenë e vendosur të mos përfshijë dojo CSS klasat në tag trupit dhe vetëm shtoni ato kur është e nevojshme. Ka ndoshta ndihmëtarë disa pamje nga faqe që kanë nevojë për të shtuar atributet e tyre për tag trupit. (I tha se ishte e ndërtuar)

Kodi është në dispozicion në depo tim Git @ Github dhe faqe demo .
Vazhdo leximin 'Tag Zend Kornizë Trupi Helper Shiko »

Quick Symfony Fillimi DI (Injection varësisë) Tutorial

Nga , e shtunë 14 gusht 2010 2:21 pm

Çfarë është varësisë Injection (DI)?

Injeksion varësisë është një teknikë që lejon për objekte të shoqëruar lirshëm brenda një aplikim të software. Në përgjithësi, nëse një objekt kërkon qasje në funksionalitetin e një tjetër ajo do të jetë instantiated vendit kryesor të sistemeve të shoqëruar fort. Me injeksion varësisë implementuese injektuar ne objektet e nevojshme gati për përdorim (nganjëherë referuar edhe përmbysja e kontrollit - IOC). Merrni shembullin e mëposhtëm:

  <? Php
 klasë DecisionMaker {
     makeDecision publik funksion ($ array parametrat) {
         / / Nevoja përshtatës bazës së të dhënave
         $ Dp = new DecisionParameters ();
         $ $ ParameterScore = dp-> getScore ($ parametrat);
         / * ...  Logjika e disa më shumë vendim ...  * /
         Kthimi ($ parameterScore> 50);
     }
 } 

Kjo pjesë e kodit është e thënë të jetë e shoqëruar ngushtë me objektin DecisionParameters. Rishkrimin më lart në një mënyrë të shoqëruar lirshëm ne do të kemi diçka si ....

  <? Php
 klasë DecisionMaker {
     private $ _dp;
     publik __ funksion konstrukt ($ PD) {
         $ Kjo-> _dp = $ dp;
     }
     makeDecision publik funksion ($ array parametrat) {
         $ ParameterScore = $ this-> _dp-> getScore ($ parametrat);
         / * ...  Logjika e disa më shumë vendim ...  * /
         Kthimi ($ parameterScore> 50);
     }
 } 

Përderisa fituar të mirat e kodit shoqëruar lirshëm ne jemi duke shtuar kompleksitetin e tillë që çdo herë që një objekt është instantiated ne gjithashtu duhet të ilustroj me shembull konkret varësinë e saj dhe të kalojë këto në shumë. Për shembull, këtë:

  $ Zgjedhje = DecisionMaker i ri ();
 echo $ zgjedhje-> makeDecision (array ('përpjekje' => 'ulët', 'kthimi' => 'e lartë')); 

tani bëhet:

  $ Dp = new DecisionParameters ();
 $ Zgjedhje = new DecisionMaker ($ PD);
 echo $ zgjedhje-> makeDecision (array ('përpjekje' => 'ulët', 'kthimi' => 'e lartë')); 

Kjo situatë bëhet më e dhimbshme si numri i varësi për një klasë është rritur, dhe atë nëse Dependencies vetë kanë Dependencies? Kjo mund shumë shpejt të bëhet një makth objekt administrata! Shkruani kontejnerët injeksion varësisë (apo kornizat) ...
Vazhdo leximin 'Quick Symfony Fillim DI Tutorial (Injection varësisë)' »

Zend_Layout lakuriq dhe Zend_View

Nga , e martë 10 gusht 2010 11:47 pm

Në këtë artikull unë shoh në përdorimin Zend_Layout dhe Zend_View së bashku me një kontrollues të thjeshtë para për të treguar se si është e mundur që të fillojë që ndan logjikën e biznesit dhe prezantimin në aplikimin tuaj. Të gjitha kod është në dispozicion në Github:
Zend_Layout lakuriq dhe Zend_View në Github .

VAZHDIM 'Zend_Layout zhveshur dhe Zend_View' leximin »

Zend Kornizë Per Layout Settings Moduleve - Follow Up

Nga , e martë 16 shkurt, 2010 8:48 pm

Si të ndjekin deri në postin tim mëparshme mbi parametrat bazë modul në layout për Zend Kornizë , unë e kam updated kodin që kërkojnë konfigurimin më pak pastaj para (jo se e nevojshme më shumë se disa rreshta në konfigurimin e aplikimit!).
VAZHDIM 'Kornizë Zend Per Settings Layout Moduleve - Follow Up' leximin »

Krijimi i URL-në Zend Helper Custom Shiko

Nga , e enjte Jan 28, 2010 11:01 pm

Kjo mund të duket e thjeshtë, por unë u banging kokën duke u përpjekur për të krijuar një URL në një ndihmës pamje porosi në Zend Kornizë . Unë kam kurs përbërje e cila merr modulin nga nën domain-në përdorim kështu që unë nuk mund të përdorin një URL të thjeshtë hardcoded.

VAZHDIM 'URL krijuar në Zend Helper Custom Shiko leximin »

Kërkesat për Route sitemap.xml në kontrollues porosi / veprim

Nga , e mërkurë 6 Janar 2010 12:13 am

Në mënyrë që të kërkesave të drejtpërdrejta për / sitemap.xml në një kontrollues porosi dhe veprimit në tuaj Zend Kornizë aplikimit thjesht të shtoni në vijim në application.ini tuaj ose file config alternativ (p.sh. përdorimi I navigation.ini):

 resources.router.routes.sitemap.route = "sitemap.xml"
 resources.router.routes.sitemap.defaults.controller = index
 resources.router.routes.sitemap.defaults.action = sitemap

Kodi Shembull për kompjuteri mund të shihet, duke krijuar një veprim në kontrollues të përshtatshëm (p.sh. sitemap im qëndron në kontrollues indeksit, të veprimit sitemap):

 < php
 klasë IndexController
     shtrihet Zend_Controller_Action
 {
     / **
      * Renders një sitemap bazuar në organizim Zend_Navigation
      * /
     sitemapAction publik funksion ()
     {
    	 echo $ kjo-> pamje-> navigacion () -> sitemap ();
    	 $ Kjo-> pamje-> Layout () -> disableLayout ();
    	 $ Kjo-> _helper-> viewRenderer-> setNoRender (i vërtetë);
     }
 }

Sitemaps shpejt dhe lehtë mund të gjenerohet duke përdorur Zend_Navigation , një tutorial i madh i shpejtë (dhe në përgjithësi shumë të dobishme për Zend Kornizë mësime) është hedh Zend - dinamike duke krijuar një meny të një Harta e web faqes dhe breadcrumbs .

Zend Framework Per-Moduli settings bazë

Nga , e premte Jan 1, 2010 10:40 pm

Unë kam krijuar një follow për këtë post që kërkon më pak konfigurim, ju lutem shikoni Layout Module Based - Zend Kornizë .

Kur përdorni kuadrin Zend me module, të dukshme e tij se në qoftë se ju xhironi ndryshme (sub-) faqet off të njëjtën kërkesë ju nuk shprehin domosdoshmërisht duan të njëjtat Scripts paraqitjen për çdo pjesë. Unë vendosa të shkoj me strukturën e faqes e mëposhtme:

  / Application
     / Kontrolluesit
         ...
     / Modele
     / Module
         / Default
             / Kontrolluesit
             / Faqosja
                 / Scripts
             / Views
                 / Scripts
         / AnotherModule
             ...
     / Scripts

Problemi u ngritjen Scripts paraqitjen në një bazë per-modul. Përgjigja erdhi përmes përdorimit të një Helper Veprimit. Ngritja Layouts në një bazë per-modul përfshin tre hapa:

  1. Application.ini (apo organizim të ngjashme konfigurimit):
      admin.resources.layout.layoutPath = APPLICATION_PATH "/ modules / admin / Layouts / scripts"
     default.resources.layout.layoutPath = APPLICATION_PATH "/ modules / default / Layouts / scripts"
     member.resources.layout.layoutPath = APPLICATION_PATH "/ modules / anëtar / Layouts / scripts"
     affiliate.resources.layout.layoutPath = Hap APPLICATION_PATH "/ modules / Filialin / Layouts / scripts" 
  2. Krijo Helper tuaj të Veprimit:
      <? Php
     / **
      * Përcakton shtegun e layout në një bazë per-modul
      *
      * @ Author Lloyd Watkin <lloyd@evilprofessor.co.uk>
      * @ Prej 2010-01-01
      * /
     klasë Pro_Controller_Action_Helper_SetLayoutPath
         shtrihet Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Vë rruga paraqitjen bazuar në modulin
          * /
         preDispatch publik funksion ()
         {
        	 $ Moduli = $ this-> getRequest () -> getModuleName ();
    
    	     if ($ bootstrap = $ this-> getActionController ()
    	                        -> GetInvokeArg ('bootstrap')) {
    
    	         $ Config = $ bootstrap-> getOptions ();
    
    	         if (isset ($ config [$ modul] ['burime'] ['faqosje'] ['layoutPath'])) {
    	             $ LayoutPath =
    	                  [Moduli $] $ config ['burime'] ['paraqitjen'] ['layoutPath'];
    	             $ Kjo-> getActionController ()
    	                  -> GetHelper ('faqosje')
    	                  -> SetLayoutPath ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. Dhe së fundi boostrap e ndihmëtar të veprimit:
      ...
         / **
          * Vë up Scripts paraqitjen në një bazë per-modul
          * /
         mbrojtur funksion _initLayoutHelper ()
    	 {
    	     $ Kjo-> bootstrap ('frontController');
    	     $ Layout = Zend_Controller_Action_HelperBroker :: addHelper (
    	         ri Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 

Zend Kornizë: Bazat - Review

Nga , e shtunë 28 Nëntor 2009 10:42

Punëdhënësi im paguar kohët e fundit për një grup prej nesh zhvilluesit për të marrë Kornizën Zend me: Bazat e kursit, këtu unë do të përmbledh mendimet e mia dhe opinionet në kurs për të tjerët. Për ata që duke kërkuar për të kursyer kohë, këtu është përmbledhje e mia:

Për zhvilluesit të cilët nuk kanë pasur kohë për ta parë në Kornizën Zend këtë kurs (Zend Kornizë: Bazat) ofron një pasqyrë të mirë të përgjithshëm të kuadrit futur me ju për fushat kyçe dhe duke i dhënë informacion të mjaftueshëm në mënyrë që të vazhdojë. Për ata të cilët kanë kaluar kohë duke kërkuar në kuadrin e kanë ndjekur një ose dy mësime ky kurs nuk ofron shumë më përtej.

Sfond

Unë kam qenë një PHP zhvilluesi i saj për rreth 5-6 vjet, dhe kanë filluar duke punuar me Zend Kornizë në baza komponent gjatë 6 muajve të fundit. Unë kam zhvilluar dhe / ose qenë një zhvillues në një çift të Zend Kornizë të vogël MVC sites. unë do të jem i sinqertë, unë nuk kanë pasur një sasi të madhe të ekspozimit ndaj strukturave të tjera nga një pikë kodim të parë, por kanë kaluar disa ore studjuar faqet e internetit të projektit dhe vlerësimit them. e kornizës dhe komunitetit përreth Zend Kornizë ai është mjaft emocionuese dhe nuk duket të jenë mundësitë e mëdha në ku e saj do.

Rreth Kursit

Kursi është dorëzuar mbi 9 sesione dy orë WebEx (me një ndërprerje 10-minutëshe në mes). Ora është shpenzuar duke kaluar nëpër një sërë slides ofruara nga Zend me diskutim në çdo kohë. Ju mund të përdorni një mikrofon për të folur për mësuesi, por të jetë i sinqertë unë nuk kam parë askënd të përdorë asgjë më shumë se dritaren e chat. Përveç kësaj një makinë Ubuntu VMWare është kusht që ka kodin shembull dhe projekte të ngritur një version të një gjyqin e Zend Studio. Bisedimet kreu kurs për të pranishmit ose mbi një zgjidhje të VoIP të integruar, ose ju mund të thirrni në përdorimin e një nga shumë thirrës në mbarë botën në numra.

Gjatë materiale përbëhet nga një pasqyrë të shkurtër të Kornizës dhe model MVC para se të nisej në një aplikim të modelit të ftuarve. Diskutimi tregoi bootstrapping, Zend_Application, Tabelat DB, qasje Baza e të dhënave, forma, filtrim, ACL, të Vleresimin, etj, etj Në thelb që mbulon të gjitha temat që ju do të kërkojnë për të marrë një faqe bazë up një running gjithë kohës duke ju dhënë mjetet për të shkoni dhe të merrni më të avancuar në kuadër (edhe pse kjo e bëri shumë të 'Shikoni faqen e internetit' shumë e kohës).

Koha është dhënë për kodin dorë disa shembuj, dhe për të zhvilluar e 'miq' dhe aplikimin e thjeshtë 'wiki-së. Personalisht ndjeva se siguruar kodin ose çdo app dhe pastaj na pyesnin për të zhvilluar atë që ishte në thelb një kopje së bashku me të vërtetë nuk ofrojnë një përvojë të mirë të mësuarit. Unë do të kishte preferuar për të zhvilluar një kërkesë të ngjashme, por jo identike. me zbatimin shembull me të mirën e të pasurit një udhëzues për t'iu referuar. Përndryshe ndërtimin aplikimet nga e para me demonstrues do të çuar ndoshta në pyetje më shumë se pse dhe si, duke i dhënë kështu një kuptim më të mirë të kuadrit, pasi të gjithë ju mund të kërkoni specifikat pas kursit.

Leksioni i fundit përbëhej të punuar në zbatimin wiki me ndihmën / udhëzim nga mësuesi. Pas reagime kurs është marrë, u theksua disa herë nëpërmjet kursit që Zend merr reagime shumë seriozisht, ne fakt me sa duket versioni ynë i kursit ishte mjaft e re. Disa nga zhvilluesit e tjera të kompanisë do të marrë kursin e shpejt kështu që do të jetë interesante të shihet nëse kjo ka ndodhur.

Stili kurs ishte informal, lejohet për komentin dhe bashkëpunimin në mes të pranishmit dhe instruktor. Udhëheqësi kurs ishte miqësor, i arritshëm (email adresat ishin ndarë për pyetje), dhe ndërsa prezantimin e tij nga slides ishte pak i dredhur u duk plotësisht kompetent në kuadër. Ai ishte në mënyrë të qartë një person që ka përdorur kornizën në një bazë të rregullt sesa dikush që është mësuar për të mësuar në kurs, më ka pëlqyer përvoja e 'botës së vërtetë' në këtë drejtim.

Ndjenja e përgjithshme

Në disa mënyra kam gjetur kursin e një humbje kohe, në të tjerat ai ishte shumë i dobishëm. Shpresojmë se unë do të merrni arsyet e mia të gjithë në mënyrë të qartë, dhe ndoshta të japë disa ushqim për të menduar apo të dobishme reagime (duke e ditur mua kjo nuk ka gjasa!).

Për mua ky kurs synonte të nivelit të ulët. Duke kaluar nëpër udhëzues quickstart, lexoni Kornizë Zend Rob Allen në Veprim, dhe ka punuar me kuadrin pak nuk e kam të vërtetë të merrni asgjë shumë. Unë do të të pëlqente kursin për të marr nga fundi i quickstart dhe të zhvillojnë aftësitë e tjera.

Ajo tha se, titulli sigurisht e bën të qartë shtetëror "Zend kornizë bazat" dhe në këtë aspekt kursi arrin atë që vendos të bëjë. Anëtarët e tjerë të ekipit të zhvillimit që nuk kanë shpenzuar kohë duke kërkuar në kuadrin përfunduar çdo seancë me entuziazëm dhe e pyeti pyetje e cila ishte me të vërtetë mirë për të parë.

Të gjitha nuk ishte e humbur, ajo ishte e mirë për të shpenzuar kohë konfirmuar të dhënat themelore të kuadrit dhe për të marrë të kërkojë disa pyetje në zonat ku nuk ishte 100%. Kjo ishte edhe koha që kam marrë të ulen çdo ditë dhe të mendojnë për kodim përdorur projektet kuadër dhe të ardhmen, diçka që unë nuk do të qenë në gjendje të bëjë ndryshe (mund ta imagjinoni kompania juaj duke rënë dakord për këtë? :)). E fundit por jo më pak edhe ju të merrni një certifikatë e bukur nga Zend për të thënë që keni ndjekur kursin (megjithëse me email).

Zend Kornizë Certifikimi

Kjo ishte një pyetje që vinin në mendje gjatë, do të përgatisë mua për certifikim? Shpejtë, e lehtë nuk është një oshëtimë. Mësuesi kurs ishte mjaft e qartë në se me këshilla shtesë që për vërtetimin ju duhet të vërtetë të jetë duke përdorur kornizën në një ditë në baza ditore dhe të ndjehen shumë të rehatshme dhe të sigurt në përdorimin e saj dhe metodologjitë.

Përmbledhje

Duke pasur parasysh gjithçka që unë kam shkruar më lart, unë do të përmblidhni gjithçka në dy pikat e plumbave të lehtë:

  • Të reja për Zend Kornizë: Ky kurs ka pikërisht ajo që ju do të presin, kjo ju jep një paraqitje të mirë në kuadrin e një argumentim të mirë mbi bazat nga të cilat mund të ndërtohet. Kursi i duket për të gjeneruar interes dhe entuziazëm për të kornizës midis zhvilluesit.
  • Përdoret Kornizën Zend: Ndërkohë që ishte e bukur për të mbështetur disa nga bazat shumë ndjeva kohë, përpjekje, dhe fondet për të marrë kurs mund të janë shpenzuar më mirë diku tjetër. Ajo do të ishte mirë që të see Zend krijuar një kurs të ri të nivelit të lartë për të marrë zhvilluesve të nivelit të ardhshëm -. Të paktën me standardet e certifikimit dhe më gjerë Për këtë unë do të nënshkruajë menjëherë.












Theme nga Panorama Themocracy

3 vizitorë online tani
2 mysafirë, 1 bots, 0 anëtarë
Vizitorë Max sot: 20 at 04:29 am UTC
Këtë muaj: 26 në 04-04-2012 UTC 10:27 PM
Këtë vit: 69 në 27-02-2012 09:56 am UTC
Gjithë koha: 130 në 28-03-2011 UTC 10:40 PM