Категорија: Зенд Фрамеворк

Зенд Фрамеворк по модул на бази поставки

Би , петак 1. јануара 2010 10:40 ам

Направио сам Фолловуп на овај пост који захтева мање конфигурацију, погледајте Модул На Распоред - Зенд Фрамеворк .

Када користите Зенд Фрамеворк са модулима, својим очигледно да ако користите различите (под) сајтове ван исте апликације не нужно желе исте скрипте распоред за сваки део. Одлучио сам да одем са следећим структуре сајта:

  / Примена
     / Контролери
         ...
     / Модели
     / Модула
         / Дефаулт
             / Контролери
             / Распоред
                 / Скрипте
             / Погледа
                 / Скрипте
         / АнотхерМодуле
             ...
     / Скрипте

Проблем је постављање скрипти на распоред по модулу основи. Одговор је дошао преко преко акцију помагач. Подешавање распореда на по модулу основи подразумева три корака:

  1. Апплицатион.ини (или сличне конфигурације подешавање):
      админ.ресоурцес.лаиоут.лаиоутПатх = АППЛИЦАТИОН_ПАТХ "/ модулес / админ / распореде / скрипте"
     дефаулт.ресоурцес.лаиоут.лаиоутПатх = АППЛИЦАТИОН_ПАТХ "/ модулес / дефаулт / распореде / скрипте"
     мембер.ресоурцес.лаиоут.лаиоутПатх = АППЛИЦАТИОН_ПАТХ "/ модулес / члан / распореде / скрипте"
     аффилиате.ресоурцес.лаиоут.лаиоутПатх = АППЛИЦАТИОН_ПАТХ "/ модулес / партнера / распореде / скрипте" 
  2. Креирајте ваш помоћник Акција:
      <Пхп?
     / **
      * Поставља распоред стаза на по модулу бази
      *
      * @ Аутхор Лојд Ваткин <ллоид@евилпрофессор.цо.ук>
      * @ 2010-01-01 од
      * /
     класе Про_Цонтроллер_Ацтион_Хелпер_СетЛаиоутПатх
         продужава Зенд_Цонтроллер_Ацтион_Хелпер_Абстрацт
     {
         / **
          * Поставља распоред пут заснован на модулу
          * /
         јавну функцију преДиспатцх ()
         {
        	 $ Модул = $ тхис-> гетРекуест () -> гетМодулеНаме ();
    
    	     иф ($ боотстрап = $ тхис-> гетАцтионЦонтроллер ()
    	                        -> ГетИнвокеАрг ('дизања')) {
    
    	         $ Цонфиг = $ боотстрап-> гетОптионс ();
    
    	         иф (иссет ($ цонфиг [$ модул] ['ресурси'] ['распоред'] ['лаиоутПатх'])) {
    	             $ ЛаиоутПатх =
    	                  $ Цонфиг [$ модул] ['ресурси'] ['распоред'] ['лаиоутПатх'];
    	             $ Тхис-> гетАцтионЦонтроллер ()
    	                  -> ГетХелпер ('распоред')
    	                  -> СетЛаиоутПатх ($ лаиоутПатх);
    	         }
        	 }
         }
     } 
  3. И на крају боострап помагач акцију:
      ...
         / **
          * Подешава изглед скрипте на по модулу бази
          * /
         заштићени функција _инитЛаиоутХелпер ()
    	 {
    	     $ Тхис-> боотстрап ('фронтЦонтроллер');
    	     $ Распоред = Зенд_Цонтроллер_Ацтион_ХелперБрокер:: аддХелпер (
    	         нова Про_Цонтроллер_Ацтион_Хелпер_СетЛаиоутПатх ());
    	 }
     ... 

Доктрине: ДАТЕТИМЕ сада подразумевано ()

Би , среда 30. децембар 2009 6:30 ам

Ја сам се борила са подешавањем шеме базе података за нове Зенд Фрамеворк пројекат. Ја сам коришћење покушава да искористи доктрина ОРМ за мој базу података модела. Морам да подесите шему тако да ми дозволили да одреди датум подразумевани и време за `датетиме` колоне, на пример, при додавању нових порука добијем тренутни тиместамп. После много трагања и експериментисање нашао сам решење тако да сам га дељење.

У вашем шеме ИАМЛ датотеку, довољно је да урадите следеће:

 Поруку:
   Ацтас:
     Тиместампабле:
       Написано:
         Име: цреатед_ат
         тип: тиместамп
         Формат: Имд Х: и: с
       ажуриран:
         Име: ласт_упдатед
         тип: тиместамп
         Формат: Имд Х: и: с
   колоне:
     ИД:
       тип: цео број
       примарни: истина
       аутоинцремент: истина
     Име: стринг (255)
     Е-маил: стринг (300)
     Порука: стринг (2000)

Ако с друге стране не желите `упдатед_ат` колона можете да употребите следеће:

 Поруку:
   Ацтас:
     Тиместампабле:
       Написано:
         Име: цреатед_ат
         тип: тиместамп
         Формат: Имд Х: и: с
       ажуриран:
         особе са инвалидитетом: истина
   колоне:
     ИД:
       тип: цео број
       примарни: истина
       аутоинцремент: истина
     Име: стринг (255)
     Е-маил: стринг (300)
     Порука: стринг (2000)

Зенд Фрамеворк: Основе - Преглед

Би , субота 28. новембар 2009 10:42 ам

Мој послодавац је недавно платио за групу од нас програмера да Зенд Фрамеворк: Основе Наравно, овде ћу сумирати моје мисли и мишљења о курс за друге. За оне који желе да уштеде време, ево мој резиме:

За програмере који нису имали времена да погледате Зенд Фрамеворк овај курс (Зенд Фрамеворк: Основе) нуди добру укупну слику оквира увођења вам да кључне области и даје довољно информација како би наставили. За оне који су провели време гледајући у оквир и су пратили један или два туторијала овај курс не нуди много шире.

Позадина

Био сам ПХП- програмер за око 5-6 година, и почели рад са Зенд Фрамеворк на компоненту основи током последњих 6 месеци. Ја сам развио и / или је програмер на неколико малих Зенд Фрамеворк МВЦ ситес.А Бићу искрен, нисам имао огроман изложености другим оквирима од кодирања тачке гледишта, али су провели неколико сати истраживање пројекат сајтова и вредновање тхем.А оквир и заједница око Зенд Фрамеворк је сасвим узбудљиво и изгледа да постоје велике могућности у којима његов иде.

О Курс

Курс је испоручио преко 9 два сата ВебЕк сесија (са 10 минута паузе у средини). Време је провео пролази кроз скуп слајдова које Зенд уз дискусију у било ком тренутку. Можете користити микрофон да разговара са инструктора, али да будем искрен нисам видео никога користи нешто више од прозору за ћаскање. Поред тога ВМУаре Убунту-машина под условом да има пример кода и пројеката поставити пробну верзију Зенд Студио. Наравно лидер разговара са учесницима, било преко интегрисаног ВоИП решења, или можете да позовете у коришћењу једне од многих у свету бирање у бројкама.

Током материјал састоји се од кратак преглед оквира и МВЦ образац пре него што стигну у књигу гостију узорак апликације. Дискусија показала боотстраппинг, Зенд_Апплицатион, ДБ табеле, приступ базама података, форми, филтрирање, АЦЛ, Чланови, итд, итд Углавном покривају све теме које бисте захтевају да се основне сајт до све време дајући вам алате за иди и добијете више напредовала у оквиру (мада се то износ "Погледајте сајт" много времена).

Време је дато да код неке примере, и да развије "Књига утисака" и једноставно "вики" апликације. Лично сам осетио да пружа кода или сваки апликација и онда тражи од нас да развију оно што је у суштини копија упоредо није заиста обезбеђују добро искуство учења. Ја бих радије да се развије апликација слично, али не и идентични. на пример, апликацију користи да је водич за односе. Алтернативно изградњу апликација од нуле са демонстрант би евентуално довело до више питања о томе зашто и како, дајући боље разумевање оквира, на крају крајева можете потражити специфичности после курса.

Последњег предавања се састојао у раду на викију примени уз помоћ / вођство инструктора. Након курса повратне информације узет, истакнуто је неколико пута кроз курс који Зенд узима повратну информацију веома озбиљно, у ствари, очигледно нашу верзију курса је сасвим ново. Неки од других програмера у компанији ће бити узимајући наравно ускоро, тако да ће бити интересантно видети да ли се то десило.

Наравно стил је неформалан, дозвољено за повратне информације и сарадње између присутних и инструктор. Наравно вођа је био пријатељски, приступачан (е-маил адресе су биле заједничке за питања), а док своју презентацију са слајдовима је помало несигурног изгледало потпуно компетентан у оквиру. Је јасно неко ко користи оквир на редовно него неко ко је научио да научи, наравно, сам волео искуство "стварни свет" у том смислу.

Општи осећај

На неки начин сам пронашао током губљење времена, у другима је било веома згодно. Надам се да ћу добити своје разлоге преко јасно, а можда и обезбеди храну за размишљање или корисне повратне информације (знајући мене је то мало вероватно!).

За мене овај курс је био циљ пренизак ниво. Пошто прошли кроз Куицкстарт водич, прочитајте Роб Аллен Зенд Фрамеворк у акцији, и радио са оквиром мало нисам стварно добијају ништа превише. Ја бих волео од курса да покупи од краја Куицкстарт и развијање додатних вештина.

То је рекао, наравно, наслов не јасно "Зенд Фрамеворк: Основе" и у том аспекту наравно постиже оно што је наводи да уради. Остали чланови развојног тима који нису провели време гледа у оквир завршио сваке сесије са ентузијазмом и постављали питања која је заиста лепо видети.

Све није изгубљено, да је добро да проведу време потврђују основне податке о оквир и да да питам неколико питања у областима у којима нисам био 100%. Такође је било време да морам да седнем сваког дана и размислите о кодирању користећи оквир и будућим пројектима, што не бих и била у стању да другачије (можете ли да замислите ваше компаније пристао на то?)). Последње, али не и најмање важно добијате и леп сертификат са Зенд да кажем да сте присуствовали курса (мада е-маилом).

Зенд Фрамеворк Сертификација

То је било једно питање које непрестано долазио на памет у току, да ли би ми се припреме за сертификацију? Брз, једноставан је одјекује бр. Наравно инструктор је сасвим јасно да са додатним саветима да је за сертификат заиста треба да користите оквир на дан у дан основи и осећају веома пријатно и самоуверено у својој употреби и методологија.

Резиме

С обзиром на све што сам горе написао, ја ћу сумирати све у два једноставна Ненумерисане:

  • Нови у Зенд Фрамеворк: Овај курс се управо оно што бисте очекивали, то вам даје леп увод у оквир и добро уземљење на основама из које можете изградити. Наравно Изгледа да интересовање и ентузијазам за оквир међу програмерима.
  • Половни Зенд Фрамеворк: Док је било лепо обали неке од веома основе осетио сам времена, труда и средстава да курс може од било боље провео другде. То ће бити лепо да СЕЕА Зенд креирали нови виши ниво курса да програмерима да на следећи ниво - барем за стандард сертификације и даље Јер да ћу потписати одмах..

Лог са ДБ користећи Зенд Фрамеворк

Би , уторак 14. април 2009 9:06 ам

Успели сам да сајт проради са Зенд Фрамеворк , све је лепо логовања на Фиребуг / ФиреПХП Дакле, следећи корак је био да се пријавите за ДБ. Такође сам желео да се пријавите неке додатне информације коришћењем оквира, као што су кориснички агент, датум и време, добити и пост променљиве. Тако да продужи упутство за мало ево шта сам урадио:

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

$ ЦолумнМаппинг = арраи ('приоритет' => 'приоритет ",
'Поруку' => 'Порука',
'Датетиме' => 'тиместамп',
'Усер_агент' => 'усер_агент',
'Гет_варс' => 'гет_варс',
'Пост_варс' => 'пост_варс',
'Сајта' => 'сајт'
);

$ ВритерДб = нових Зенд_Лог_Вритер_Дб ($ дб 'еррор_логгинг', $ цолумнМаппинг);
$ Логер = нових Зенд_Лог ($ вритерДб);

$ Логер-> сетЕвентИтем ('датетиме', датум ('Имд Х: и: с "));
$ Логер-> сетЕвентИтем ('усер_агент', $ _СЕРВЕР ['ХТТП_УСЕР_АГЕНТ']);
$ Логер-> сетЕвентИтем ('гет_варс', принт_р ($ _ГЕТ, труе));
$ Логер-> сетЕвентИтем ('пост_варс', принт_р ($ _ПОСТ, труе));
$ Логер-> сетЕвентИтем ('сајт', САЈТА);

$ Логер-> Инфо ("информациони поруку ');

Где низ тастера у $ цолумнМаппинг су моји имена колона. "Приоритет 'и' поруку 'су разумеју Зенд_Лог_Вритерс али додатна поља су додати да ми дају неке додатне информације.

Очигледно је да ова претпоставља да имате логовање ради помоћу једне од других писаца први:)













Панорама Тхеме би Тхемоцраци

9 посетилаца оффлине
5 гостију, 4 робота, није видљива 0 цланова
Макс посетилаца данас: 9 у 12:00 пм УТЦ
Овог месеца: 23 у 24-08-2011 05:40 пм УТЦ
Ове године: 130 у 28-03-2011 10:40 пм УТЦ
Алл Тиме: 130 у 28-03-2011 10:40 пм УТЦ