Категория: Zend Framework

Zend Framework на Модул настройки, базирани на

От , петък 1 януари 2010 22:40

Аз съм направил follow-на този пост, който изисква по-малко конфигурация, моля, вижте Модул Въз Layout - Zend Framework .

При използване на Zend рамка с модули, очевидно, че ако сте стартирали различни (под) сайтове разстояние същото заявление не е задължително да искат същите скриптове оформление за всяка част . Реших да отида със следната структура на сайта:

  / Приложение
     / Контролери
         ...
     / Модели
     / Модули
         / По подразбиране
             / Контролери
             / Оформление
                 / Скриптове
             / Изгледи
                 / Скриптове
         / AnotherModule
             ...
     / Скриптове

Проблемът е създаване на скриптове за оформление на модулен принцип. Отговорът дойде чрез използване на действие Helper. Създаване на оформления на модулен принцип включва три стъпки:

  1. Application.ini (или подобна конфигурация настройка):
      admin.resources.layout.layoutPath = APPLICATION_PATH "/ модули / администратор / оформления / скриптове"
     default.resources.layout.layoutPath = APPLICATION_PATH "/ модули / по подразбиране / оформления / скриптове"
     member.resources.layout.layoutPath = APPLICATION_PATH "/ модули / член / оформления / скриптове"
     affiliate.resources.layout.layoutPath = APPLICATION_PATH "/ модули / филиал / оформления / скриптове" 
  2. Създаване на вашия помощник за действие:
      <? PHP
     / **
      * Задава оформлението пътя на модулен принцип
      *
      * @ Автор Лойд Watkin <lloyd@evilprofessor.co.uk>
      * @ Тъй 01.01.2010
      * /
     клас Pro_Controller_Action_Helper_SetLayoutPath
         разширява Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Задава оформлението на път, на основата на модули
          * /
         публична функция preDispatch ()
         {
        	 $ Модул = $ това-> getRequest () -> getModuleName ();
    
    	     ако ($ Bootstrap = $ това-> getActionController ()
    	                        -> GetInvokeArg (Bootstrap ")) {
    
    	         $ Довереник = $ Bootstrap-> getOptions ();
    
    	         ако (isset ($ конфиг [$ модул] ['ресурси'] ['оформление'] ['layoutPath'])) {
    	             $ LayoutPath =
    	                  $ Конфиг [модул] ['ресурси'] ['оформление'] ['layoutPath "];
    	             $ Това-> getActionController ()
    	                  -> GetHelper ("оформление")
    	                  -> SetLayoutPath ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. И накрая boostrap помощник за действие:
      ...
         / **
          * Задава оформлението скриптове на на модулен принцип
          * /
         Функция за защита _initLayoutHelper ()
    	 {
    	     $ Това-> Bootstrap ("frontController");
    	     $ Оформление = Zend_Controller_Action_HelperBroker: addHelper (
    	         ново Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 

Доктрината: подразбиране DATETIME NOW ()

До , сряда 30-ти декември 2009 18:30

Съм се борят със създаване на база данни схема за новия Zend Framework проекта. Аз съм използване на се опитват да използват доктрината ORM за моята база данни модели. Имам нужда да се създаде схемата, така че позволява на мен да настроите по подразбиране дата и час за колона "DateTime", например при добавяне на ново съобщение получите текущата клеймото. След много търсене и експериментиране намери решение, така че аз съм го споделяте.

В схема YAML файл, просто направете следното :

 Съобщение:
   actAs:
     Timestampable:
       създаден:
         име: created_at
         : клеймото на типа
         формат: Ymd H: аз: S
       обновяване:
         име: last_updated
         : клеймото на типа
         формат: Ymd H: аз: S
   колони:
     ID:
       типово: целочислени
       началното: TRUE
       autoincrement: вярно
     име: низ (255)
     имейл: низ (300)
     съобщение: низ (2000)

Ако от друга страна не искате колона "updated_at", можете да използвате следното:

 Съобщение:
   actAs:
     Timestampable:
       създаден:
         име: created_at
         : клеймото на типа
         формат: Ymd H: аз: S
       обновяване:
         хората с увреждания: вярно
   колони:
     ID:
       типово: целочислени
       началното: TRUE
       autoincrement: вярно
     име: низ (255)
     имейл: низ (300)
     съобщение: низ (2000)

Zend Framework: Основи - Общ преглед

От , събота 28 ноември 2009 22:42

Наскоро Работодателят ми плаща за група от нас разработчиците да вземе Рамковата Zend: Основи на Разбира се, тук аз ще обобщя моите мисли и мнения на курс за другите. За тези, които търсят да се спести време, тук е моят резюме:

За разработчиците, които не са имали време да погледнем в Рамковата Zend този курс (Zend Framework: Основи) предлага добра цялостна картина на рамка за въвеждане на ключовите области и дава достатъчно информация, за да продължите . За тези, които са прекарали време в търсене в рамка и са последвани от една или две ръководства този курс не предложи много отвъд .

Фон

Аз съм PHP разработчик за около 5-6 години, и са започнали работа с Рамковата Zend компонент през последните 6 месеца. Съм разработила и / или разработчик на няколко малки Zend Framework MVC sites. Ще бъда честен, аз не са имали огромно количество излагане на други рамки от гледна точка на кодиране, но са прекарали няколко часа, изследване на проекта сайтове и оценка them. рамка и общността около Zend Framework, тя е доста вълнуващо и изглежда, че има огромни възможности, където ще.

За състезанието

Курсът е изпълнила над 9 две сесии часа WebEx (с 10-минутна почивка по средата). Време се отделя чрез набор от слайдове, предоставени от Zend с дискусия по всяко време. Можете да използвате микрофона, за да говорят с инструктора, но трябва да бъда честен, аз не виждам някой използва нещо повече от чат прозореца. В допълнение на VMWare Ubuntu машина е при условие, че има например код и проекти, създадени пробна версия на Zend Studio. Разговорите Разбира се лидер на присъстващите или над едно интегрирано решение за VoIP, или можете да се обадите в използването на един от многото световни набиране в числа.

По време на курса материал се състои от един кратък преглед на Рамката и MVC модел, преди да замине в заявление по образец в книгата за гости. Дискусията демонстрира, зареждане на операционна, Zend_Application, Db таблици, достъп до база данни, формуляри, филтриране, ACL, Validating, и т.н., и т.н. По принцип, покриващи всички теми, които бихте се изисква, за да получите основния обект на един работи през цялото време, като ви дава инструменти за отидете и да получите по-напреднали в рамка (въпреки че това е в размер на "Виж сайта" голяма част от времето).

Времето се дава за код някои примери, както и да се развиват "книгата" и просто "уики" заявление. Лично аз почувствах, че осигуряването на код или всяко приложение и след това ни помоли да се развива, това, което по същество е копие заедно всъщност не е добър опит за учене. Бих предпочел да се разработи прилагането подобни, но не са идентични. например приложение с полза на водач, да се позове на. Алтернатива изграждане на приложения от нулата с демонстрант евентуално ще доведе до повече въпроси за това защо и как, като по този начин дава по-добро разбиране на рамката, след всичко, което можете да търсите спецификата след курса.

Последната лекция се състои от работи по уики приложение, с помощта / указания от инструктор. След приключването на курса обратна връзка е взето, бе подчертано на няколко пъти през Разбира се, че Zend се обратна връзка много сериозно, всъщност очевидно версия на курса е съвсем ново. Някои от други разработчици в компанията ще се Разбира се, скоро така че ще бъде интересно да се види, ако това се е случило.

Разбира стил е неформална, разрешени за обратна връзка и сътрудничество между присъстващите и инструктор. Разбира се лидер е приятелски, отзивчив (имейл адреси бяха споделени за въпроси), и докато си представяне от слайдовете, е малко нестабилна изглеждаше напълно компетентен в рамките. Той беше ясно някой, който използва рамката на регулярна основа, а не някой, който се научи да чета курс, Хареса ми опит в "реалния свят" в това отношение.

Общото чувство

В някои отношения открих, разбира се, е загуба на време, при други то е много удобен. Се надявам, че ще си взема причини цяла ясно, и може би някаква храна за размисъл или полезна обратна информация (ми да знаят, това е малко вероятно!).

За себе си този курс е насочен към твърде ниско ниво. След като преминали през Quickstart употреба, прочетете Rob Allen Zend Framework в действие и работи с рамката малко не получите наистина нищо твърде много. Бих хареса разбира се, да вземете от края на Quickstart и развитие на допълнителни умения.

Това каза заглавие, разбира ясно състояние "Zend Framework: Основи" и в този аспект, разбира се постига, какво да направите . Други членове на екипа за развитие, които не са прекарали време в търсене в рамките завърши всяка сесия с ентусиазъм и задавани въпроси, което е наистина хубаво да се види.

Не всичко е загубено, че е добре да прекарват времето си, потвърждава основните детайли на рамката и стигнем до задам няколко въпроси в области, където не бях 100%. Това е време, че имам да седна всеки ден и да мисля за кодиране, с помощта на рамка и бъдещи проекти, нещо, което аз не би бил в състояние да направи по друг начин (може ли да си представите Вашата фирма съгласие за това:)). Последно, но не на последно място можете да получите хубава сертификат от Zend да кажете, че сте присъстваха курс (макар и по електронната поща).

Zend Framework сертификация

Това е един въпрос, който идва на ум по време на курса, ще ме подготви за сертифициране? Бърз, лесен е категорично "не ". Инструктор на курса бе съвсем ясно, че с допълнителни съвети, че за сертифициране трябва наистина да се използва рамката на ден за ден основа и се чувствам много комфортно и уверени в използването му и методологии.

Обобщение

Като се има предвид всичко, което съм написал по-горе, ще обобщим всичко в две лесни точки куршум:

  • Нови Zend Framework: Този курс прави точно това, което очаквате, той ви дава приятно въведение към рамката и добро заземяване на основи, от които може да се изгради . Курсът изглежда да генерира интерес и ентусиазъм за рамка сред разработчиците.
  • Използва се Zend Рамковата: Макар че е хубаво до брега някои от самото основите усетих на време, усилия и средства, за да вземе курс, може да е по-добре похарчени другаде . Тя ще бъде хубаво да ДАЕЕ Zend създаде нови по-високи ниво на курса, за да се вземат на разработчиците на следващото ниво - най-малко на стандарта за сертифициране и след това За това бих се регистрирате веднага.

Вход към DB с помощта на Zend Framework

От , вторник, 14-ти април 2009 21:06

Успях да получите на сайта и работи с Рамковата Zend , всичко е добре да влезете Firebug / FirePHP така че следващата стъпка е да влезете с DB . Аз също исках да влезете някаква допълнителна информация, с помощта на рамка, като ръководство за агент, дата и час, се получи и след променливи. Така че, за да разшири ръководство, тук малко е това, което направих:

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

$ ColumnMapping = масив ("приоритет" => "приоритет",
"Послание" => 'съобщението',
"DATETIME '=>' клеймото",
"User_agent '=>' user_agent",
"Get_vars '=>' get_vars",
"Post_vars '=>' post_vars",
"Площадка" => 'сайт'
);

$ WriterDb = нов Zend_Log_Writer_Db ($ db, "error_logging", $ columnMapping);
$ Дървар = нов Zend_Log ($ writerDb);

$ Дървар-> setEventItem (час и дата ", дата (" Ymd H: I: S "));
$ Дървар-> setEventItem ("user_agent, $ _SERVER ['HTTP_USER_AGENT']);
$ Дървар-> setEventItem ("get_vars", print_r ($ _GET, вярно));
$ Дървар-> setEventItem ("post_vars", print_r ($ _POST, вярно));
$ Дървар-> setEventItem ("площадка", на сайта);

$ Дървар-> ("Информационно съобщение");

Когато на ключовете на масив в $ columnMapping са ми колона имена. "Приоритет" и "послание" се разбират от Zend_Log_Writers , но са добавени допълнителни полета, за да ми даде някаква допълнителна информация.

Очевидно това предполага, че имате влезете работа с помощта на един от други писатели първо:)













"Панорама" Тема чрез Themocracy

5 посетители онлайн
3 гости, 2 ботове, 0 потребители
Макс посетители днес: 22, 17:44 UTC
Този месец: 23 24-08-2011 05:40 ч. UTC
Тази година: 130 в 28-03-2011 22:40 UTC
През цялото време: 130 в 28-03-2011 22:40 UTC