Napisane: 19.09.2014, 12:05:52 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Pierwsza sprawa jeżeli musisz robić to w ten sposób to znaczy że coś źle robisz bo Zend Framework 2 posiada zarówno controller plugin jak i view helper który przechowuje dane zalogowanego użytkownika Druga sprawa to rozwiązanie z dziedziczonym controllerem tak na dobrą sprawę niczego nie rozwiązuje. Ja proponowałbym skorzystać z ServiceManagera: W pliku Module.php
I teraz w widoku możesz |
Forum: Frameworki · Podgląd postu: #1125525 · Odpowiedzi: 2 · Wyświetleń: 590 |
Napisane: 7.08.2014, 09:58:27 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Gdzie użyć nowego filtru? W modelu czy w tabeli? Tzn. mam klasę modelu Album z tutoriala oraz AlbumTable. Z tego co widzę klasa Album odpowiada głównie za walidację, natomiast AlbumTable za operacje na bazie. Tworzysz nową klasę, która dziedziczyć będzie z Zend\Filter\AbstractFilter i później w getInputFilter():
|
Forum: Frameworki · Podgląd postu: #1118900 · Odpowiedzi: 3 · Wyświetleń: 613 |
Napisane: 18.07.2014, 21:06:54 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Service Manager jest oparty o wzorzec Service Locator i jest to mechanizm slużący do pobierania innych obiektów. Używa się go w module.config.php lub Module.php i składa się z 7 typów(kategorii). 1. abstract_factories pod tym kluczem definiuje się klasy, które muszą implementować ZendServiceManagerAbstractFactoryInterface. Rzadko używane. 2. aliases nadaje klasie alias, np:
Teraz jesteśmy w stanie się odwołać za pomocą
3. factories deklaruje klasy, które powinny implementować Zend/ServiceManager/FactoryInterface. Dość często używane. Np:
Jeżeli klasa ma konstruktor lub jeśli potrzebujemy dodać do klasy obiekty innej klasy to używamy do tego celu właśnie klucza factories. Obiekt jest inicjowany od razu- w momencie kiedy jest wczytywany do Service Managera. 4. invokables definiujemy klasy, które nie mają konstruktora lub jeśli nie musimy z niego(konstruktora) skorzystać. Również dość często używane, jak chociażby dla naszych klas kontrolera. Np:
Klasy pod tym kluczem są inicjowane dopiero w momencie odwołania się do danego klucza, a nie w momencie 'pobrania' przez ServiceManager 5. services służy głównie do deklarowania 'service'ów' lub klas, które są już zainicjowane. Np:
6. initializers nie miałem okazji jeszcze z tego korzystać. Ten klucz definiuje callback, który jest uruchamiany za każdym razem gdy jest tworzony obiekt, w ten sposób jeśli obiekt spełnia wymagania(np. implementuje konkretny interfejs) jeśtemy w stanie 'wstrzepić' inny obiekt.
7. shared domyślnie wszystkie service'y od ServiceManagera są 'shared', czyli pracujemy na tym samym obiekcie. Tutaj jesteśmy w stanie to zmienić, gdy np. chcemy żeby za każdym razem był tworzony nowy obiekt.
Gdy dodamy:
Jak napisałem na początku, Service Manager służy do łatwego dostępu do obiektów. Np. wyobraźmy sobie że tylko dla pewnej akcji chcesz dodać jakiś plik js, możesz to zrobić tak:
Tutaj za pomocą Service Managera dostajemy się do obiektu HeadScript i dzięki temu jesteśmy w stanie dodać plik js z poziomu akcji kontrolera Najczęśniej używane są factories i invokables. Co to są factories to napisałem wyżej, ale może dodam jeszcze jeden przykład żeby lepiej zobrazować co robi. Mamy klasę:
I załóżmy że chcemy wyświetlić w widoku to co zwraca metoda sayHello(). Możemy to zrobić na dwa sposoby. 1. Invokables W pliku Module.php dodajemy:
I teraz w akcji:
Najpierw dodajmy do ServiceManagera klasę HelloService, później w akcji pobieramy z Service Managera i odwołujemy się do metody sayHello(). Trochę to toporne i niewydajne. 2. Factories
I w akcji:
Tym sposobem dodajemy obiekt klasy HelloService do kontrolera w Service Managerze i teraz w akcji nie musimy pobierać tego obiektu, tylko bezpośrednio możemy na nim pracować. Bardziej czytelniejsze rozwiązanie, wydajne i zalecane. |
Forum: Frameworki · Podgląd postu: #1115990 · Odpowiedzi: 3 · Wyświetleń: 1 533 |
Napisane: 9.06.2014, 16:47:22 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Jeżeli dość często potrzebujesz takich informacji w widoku to możesz napisać sobie View Helper, który będzie posiadał takie informacje i prezentował je bezpośrednio w widoku. Nie będziesz musiał wtedy przekazywać za każdym razem tych danych do klasy ViewModel. Zamiast
Możesz użyć pluginu params() w kontrolerze, np:
Ten plugin posiada również inne metody, dzięki którym możemy pobrać dane z innych źródeł: - fromFiles() - fromHeader() - fromPost() - fromQuery() Więcej informacji na ten temat -> http://framework.zend.com/manual/2.0/en/mo...e-params-plugin Tak, drugi parametr jest to wartość domyślna, która będzie wykorzystywana w przypadku jeśli pierwszy parametr nie ma wartości. |
Forum: Frameworki · Podgląd postu: #1110039 · Odpowiedzi: 6 · Wyświetleń: 466 |
Napisane: 23.05.2014, 09:08:40 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Jest na to kilka sposób, dwa najczęściej używane to: 1. Standardowa klasa Select (Zend\Form\Element\Select) W klasie formularza jest taka definicja pola select:
W tej samej klasie, dodajesz metodę:
I w kontrolerze, jak tworzysz instancję formularza to przekazujesz tablicę z danymi, które mają znaleźć się w formularzu albo tablicę obiektów i tam filtrujesz te dane, które Cię interesują
2. Używanie klas z Doctrine 2 (DoctrineModule\Form\Element\*) Doctrine 2 udostępnia 3 klasy do łatwego zarządzania: - Select (DoctrineModule\Form\Element\ObjectSelect) - Radio (DoctrineModule\Form\Element\ObjectRadio) - Checkbox (DoctrineModule\Form\Element\ObjectMultiCheckbox) Przykład użycia można znaleźć pod tym adresem https://github.com/doctrine/DoctrineModule/...form-element.md. W skrócie. Definiujemy w tablicy, pod kluczem target_class entity z którego doctrine ma pobrać zawartość do selecta/radio/checkboxa. Następnie:
Następnie podajemy nazwę metody jaką mają być pobrane dane w tym przypadku findBy() oraz parametry wyszukiwania, które jest równoznaczne z: |
Forum: Frameworki · Podgląd postu: #1107858 · Odpowiedzi: 5 · Wyświetleń: 468 |
Napisane: 22.05.2014, 20:04:30 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Ja osobiście nie jestem zwolennikiem używania adnotacji, nie podoba mi się ten sposób definiowania danych. Na pewno jest przejrzysty i szybszy(szybciej się go tworzy) niż standardowy sposób definiowania formularza. Do przetwarzania adnotacji używane jest Reflecion API, które pod względem wydajnościowym jest zapewne wolniejsze od typowych funkcji i operacji. Chociaż i z tym jest coraz lepiej wraz z nowszymi wersjami PHP. Tworząc w Zend 2, na pewno warto być zaznajomionym z tym jak odbywa się tworzenie formularzy w standardowy sposób, jak można 'dobrać się' do odpowiednich właściwości itd. Większość modułów wykorzystuje standardowy sposób tworzenia formularzy. |
Forum: Frameworki · Podgląd postu: #1107789 · Odpowiedzi: 5 · Wyświetleń: 468 |
Napisane: 9.05.2014, 09:59:05 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
1. To używaj odpowiednich tagów przy pisaniu postów na forum, aby zachować formatowanie tekstu, bo strasznie źle się czyta taki plain text. 2. W widoku odwołujesz się w ten sposób do zmiennych nadanych w kontrolerze
Tak więc, zamiast:
Powinno być:
Dlatego też ten kod zadziałał: Cytat zmienna przekazuje do widoku, gdy dodalem ten kod do widoku:
i wyswietla mi sie tekst zmienna zostala przekazane, wiec nie czaje co jest nie tak i jeszcze raz zwracam sie o pomoc do was |
Forum: Frameworki · Podgląd postu: #1105845 · Odpowiedzi: 10 · Wyświetleń: 594 |
Napisane: 25.02.2014, 22:01:58 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Jeżeli klasa ArticleRepository znajduje się w Application\Entities\Repositories to taka też powinna być przestrzeń nazw. Czyli
zamień na
I powinno to załatwić sprawę. |
Forum: Frameworki · Podgląd postu: #1093858 · Odpowiedzi: 2 · Wyświetleń: 307 |
Napisane: 4.02.2014, 10:38:59 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Co to znaczy że shuffle() nie zadziałało? 1. shuffle()
W starszych wersjach PHP, losowość z shuffle() była dość prymitywna i dostawało się prawie nie zmienioną tablice, ale obecnie fukcja ta działa bardzo dobrze. 2. array_rand()
Weź jeszcze pod uwagę że w przypadku kiedy masz małą ilość tagów, np. 4 to może się zdarzyć tak, że akurat wszystkie będą w tej samej kolejności. |
Forum: Przedszkole · Podgląd postu: #1089353 · Odpowiedzi: 5 · Wyświetleń: 241 |
Napisane: 3.02.2014, 21:05:03 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Za mądrzejszego się nie uważam, ale postaram się wytłumaczyć To nie licznik dodaje nową linię, tylko znacznik p. Jeżeli usuniesz licznik, ale nie usuniesz :before to dalej tekst przeskoczy do nowej lini. Przykład: http://jsfiddle.net/P5dnr/10/ :before tworzy pseudo element, który jest pierwszym dzieckiem. Zatem Twój kod jest równoważny z tym: Znacznik p domyślnie wyświetla się jako blok(display:block), dlatego przeskakuje do nowej lini. Rozwiązaniem byłoby nadanie display:inline, albo zmiana znacznika p na jakiś 'inline'. |
Forum: Przedszkole · Podgląd postu: #1089283 · Odpowiedzi: 15 · Wyświetleń: 398 |
Napisane: 8.01.2014, 17:45:37 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
To forum nie pomaga w hackingu, robieniu spambotów, manipulowaniu głosami ani innymi podobnymi rzeczami niezgodnymi z ogólnie przyjętymi normami. |
Forum: PHP · Podgląd postu: #1084222 · Odpowiedzi: 4 · Wyświetleń: 2 615 |
Napisane: 6.01.2014, 16:31:44 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Hmm... ciężko mi sobie wyobrazić żebyś na localhoście nie mógł stworzyć vhosta, więc zakładam że chodzi o hosting W takim przypadku na ogól w panelu hostingowym istnieje możliwość przypisania katalogu konkretnej domenie. I wtedy za pomocą kreatora ze standardowego katalogu dajmy na to public_html ustawiasz public_html/public i wtedy domena traktuje ten katalog jak Document Root. Innym wyjściem jest stworzenie Dowiązania symbolicznego |
Forum: Frameworki · Podgląd postu: #1083841 · Odpowiedzi: 3 · Wyświetleń: 648 |
Napisane: 28.12.2013, 00:02:13 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Ostatnie dwa inputy zwracają wartość Yes lub No w zależności od tego, który zostanie naciśnięty. |
Forum: Frameworki · Podgląd postu: #1082398 · Odpowiedzi: 1 · Wyświetleń: 714 |
Napisane: 1.12.2013, 16:35:27 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Cytat Moje pytanie brzmi gdzie w kodzie ten doctrine jest użyty?? W tym przykładzie Doctrine używane jest w tym miejscu
Jeżeli miałeś wcześniej styczność z Doctrine to pewnie wiesz że pozwala na budowe tabel za pomocną adnotacji, które później są parsowane na odpowiednie wartości odpowiednich pól i generowany jest w ten sposób kod SQL. Zend framework 2 pozwala na budowe formularzy za pomocą adnotacji, wykorzystywany jest wtedy silnik doctrine to parsowania kodu. Tak też jest w tym przypadku, wszystko to co znajduje się w komentarzach parsowane jest na odpowiednie klasy, metody, wartości. Więcej informacji na ten temat znajdziesz w dokumentacji Zend Quick Start- Using Annotations Wyszczególniony fragment: Cytat Form annotations require Doctrine\Common, which contains an annotation parsering engine |
Forum: Frameworki · Podgląd postu: #1078392 · Odpowiedzi: 1 · Wyświetleń: 1 104 |
Napisane: 1.12.2013, 17:08:11 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Cytat Jeśli chodzi zaś o te rozszerzenia - to w chrome próbuje używać portu 63342 - jaki powinien być poprawny? Przyznam sie szczerze że nie korzystam z wtyczki do przeglądarek, tylko ze skryptozakładek(bookmarklets), xDebug domyślnie nasłuchuje na porcie 9000 więc chyba taki powinien być. Funkcja Start Debug dodaje ciastko o wartości odpowiadającej kluczowi, więc to dziwne że nie działa skoro Debug this page wykorzystuje ten sam mechanizm. Pierwsza sprawa to sprawdziłbym czy aby na pewno po kliknięciu Start Debug, przeglądarka ma cookie o nazwie XDEBUG_SESSION i wartości zgodnej z pliku ini. Domyślnie PHPSTORM. Upewni się że żadna wtyczka nie blokuje tego ciastka. Często zdarza się że wtyczki, które zapobiegają śledzeniu usuwają pliki cookie. Ciężko mi coś doradzić, bo w przypadku Listenera nie ma za dużo ustawień, a co za tym idzie za dużo szans popełnienia błędu. |
Forum: Komputery i oprogramowanie · Podgląd postu: #1078396 · Odpowiedzi: 6 · Wyświetleń: 1 459 |
Napisane: 1.12.2013, 11:00:02 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Postaram się opisać krok po kroku, ale zaczne od artykułu który może być pomocny, co prawda dotyczy on PHPStorm 2.0, ale opisuje kiedy używać remote debug itp. Configuring PHP debugging in PhpStorm 2.0 PHPStorm umożliwia debugowanie wielu rzeczy i to miałem na myśli pisząc o wybraniu odpowiedniej opcji do debugowania. Można debugować całą aplikację, pojedyńczy skrypt, PHPUnit, skrypty JS, itd. Od razu przyznam się że nie sprawdzałem wszystkich tych opcji, bo nie miałem jeszcze potrzeby. Artykuł wyżej opisuje 3 możliwości debugowania, wtedy tylko tyle było, teraz jest więcej, ale chyba te 3 sposoby są najcześniej wykorzystywane 1. Listener (uniwersalny) 2. Remote Debug (dla każdego projektu trzeba robić nową konfigurację) 3. Web Application Debug (dla każdego projektu trzeba robić nową konfigurację) Ja opiszę tutaj pierwszą możliwość Na początku trzeba zainstalować xDebug, to pominę bo myślę że jest 'oczywistą oczywistością' Następnie w pliku php.ini:
Następny krok to bookmarklets. Z oficjalnej strony(http://www.jetbrains.com/phpstorm/marklets/index.html) możemy wygenerować funkcje, które umożliwią nam start debugera, istnieją też dodatki z tego co wiem na Chrome i Firefox. Nie ważne z czego skorzystamy, najważniejsze jest żeby IDE Key był identyczny z tym z pliku .ini Teraz File -> Settings -> PHP -> Server i wypełniamy name, host i upewniamy się że zaznaczony jest nasz Debuger z rozwijanej listy. Kolejny etap to włączenie nasłuchiwania, ikona przypominająca telefon, obok ikony 'Debug'. Robimy breakpointa. Przechodzimy do przeglądarki, włączamy nasz plugin, który generuje IDE Key, odświeżamy stronę iii... powiniśmy zostać automatycznie przeniesieni do aplikacji PHPStorm, który pokaże okienko do debugowania. Ważna rzecz: Używając Listenera nie ma potrzeby dawać Edit Configuration i wybierać opcji debugowania, więc nie myśl że dodatkowo trzeba jeszcze coś wypełniać. To co wyżej napisałem powinno umożliwić debugowanie aplikacji. Może jeszcze to się przydać: Zero-configuration Web Application Debugging with Xdebug and PhpStorm |
Forum: Komputery i oprogramowanie · Podgląd postu: #1078347 · Odpowiedzi: 6 · Wyświetleń: 1 459 |
Napisane: 30.11.2013, 11:13:55 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Nie napisałeś czy zależy Ci na local czy remote debug Pierwsze krok jaki powinieneś poczynić to File -> Settings -> PHP -> Servers. Kliknąć zielony plus i dodać hosta, przy okazji w sekcji Debug możesz ustawić jakieś niestandardowe ustawienia, ale do pierwszego uruchomienia debugera nie są potrzebne tam żadne zmiany. Później dajesz Edit Configuration -> zielony plus i wybierasz co konkretnie chcesz debugować. Dokumentacja, którą podałeś pokazuje nieco starszą wersję PHP Storm (mniej możliwości debugowania). Polecam filmy na youtube jeżeli potrzebujesz krok po korku Debugging PHP with PhpStorm solidna prezentacja 57min z oficjalnego kanału jetBrainsTV Advanced Debugging in PhpStorm - PhpStorm Video Tutorial ten sam kanał, bardziej o możliwościach debugowania niż samej konfiguracji. Setup xDebug with PHPStorm przystępnie w 5 min pokazane jak skonfigurować xDebuga |
Forum: Komputery i oprogramowanie · Podgląd postu: #1078135 · Odpowiedzi: 6 · Wyświetleń: 1 459 |
Napisane: 28.11.2013, 10:37:43 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Proponowałbym skorzystać z gotowego modułu Doctrine 2 do Zend Framework 2. DoctrineORMModule. Konfiguracja bardzo prosta, wystarczy podać dane do bazy danych i możemy korzystać z dobrodziejstw ORM, gdzie mechanizm o którym wspomniałeś jest czymś standardowym. W kontrolerze wystarczy:
I mamy dostęp do Entity Managera. Tutaj jeszcze krótka prezentacja pokazująca współprace ZF2 i Doctrine 2. http://marco-pivetta.com/doctrine-orm-zf2-tutorial/#/ Ewentualnym rozwiązaniem jest stworzenie z istniejących bibliotek Zenda własnego systemu do zarządzania relacjami, ale będzie to raczej bardzo prymitywne DBAL, tylko pytanie czy jest sens wymyślać koło na nowo? |
Forum: Frameworki · Podgląd postu: #1077814 · Odpowiedzi: 3 · Wyświetleń: 692 |
Napisane: 17.11.2013, 21:12:26 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Można ściągnąć sobie framework i przeglądnąć, albo zbadać te przykłady narzędziami dla developerów, czy to wbudowanymi czy dodatkowymi takimi jak FireBug. |
Forum: Przedszkole · Podgląd postu: #1075937 · Odpowiedzi: 5 · Wyświetleń: 194 |
Napisane: 17.11.2013, 20:57:21 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Zobacz jak formatują formularze popularne frameworki CSS. Tutaj masz przykład Bootstrapa http://getbootstrap.com/css/#forms Bardzo rzadko spotykam się z formularzami na tabelkach, na ogół to pozostałości z poprzedniej epoki, jednak nadal się zdarzają. |
Forum: Przedszkole · Podgląd postu: #1075933 · Odpowiedzi: 5 · Wyświetleń: 194 |
Napisane: 15.11.2013, 23:26:34 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Cytat przeróżne testy (benchmarki) ukazują, że Zend w wersji 2 jest strasznie powolny Mógłbyś podać linki do tych testów? Bo z tego co pamiętam to owszem, były takie testy, ale z pierwszego/drugiego kwartału 2012 roku, kiedy Zend 2 był jeszcze we wczesnej becie. Jeżeli dobrze pamiętam to firma Zend zapowiedziała że optymalizacją zajmie się dopiero w kolejnych odsłonach frameworka po ukończeniu bety i wypuszczeniu stabilnej wersji. Więc testy przeprowadzone na 2.1/2.2 byłyby miarodajne, natomiast na te z 2012 roku patrzyłbym z przymróżeniem oka. Uważam że testy frameworka nie odzwierciedlają prawdziwej wydajności aplikacji i nie brałbym ich jako jedynego kryterium przy wyborze. Zend 2 nie jest przeznaczony do małych projektów i stawianie na nim strony dla zakładu fryzjerskiego byłoby przerostem formy nad treścią. W becie, Zend 2 do rozruchu podstawowej aplikacji(Skeleton Application) ładował ponad 160 plików, gdzie Symfony 2 potrzebował ~40 jeżeli dobrze pamiętam. O ilości wywoływanych funkcji nawet nie będę wspominał bo cóż... taka jest specyfika tego frameworku. W Zend 2 zmieniła się nieco architektura całego frameworka, mamy nowości typu EventManager, ServiceManager itp. przy prostej stronie z całego tego dobrodziejstwa nawet nie skorzystamy, a większość ładowana jest na 'dzień dobry'. Potrzebowałbyś podpiąć zaczep pod routing adresu? Nie ma problemu wystarczy jedna linijka kodu, jak chcesz i kiedy chcesz. Możesz podpiąć się praktycznie w każde miejsce, nie modyfikująć standardowych plików. A jak jest w innych frameworkach? Niektóre nie mają nawet takiej możliwości, inne wymagają dodatkowych bibliotek, a jeszcze inne wymagają modyfikowania plików. To wszystko przekłada się na szybkość. Zend framework 2 jest wolniejszy od Zend 1- zgoda, natomiast z tym że jest "strasznie powolny" to bym polemizował. Dodam jeszcze że za kilka/kilkanaście (Wstępna data miała być podana 6 listopada) miesięcy ma być wydany Zend 3, już trwają prace nad nim. Będzie on zmienioną wersją Zend 2. Architektura ma zostać ta sama, na pewno większą role ma odgrywać Dependency Injection, które obecnie jest uznawane za zbędny luksus, reszta zmian ma dotyczyć bibliotek, chociaż wszystko cały czas jest obgadywane i każdy ma wpływ na rozwój tego frameworka. Nowe wersja ma być prostsza, ulepszona, szybsza, a co będzie to się okaże. Tutaj link do sugestii Zend 3 http://www.google.com/moderator/#15/e=207d...f=207d6f.6bdbc1 Cytat Czy ZF 2 jest gotowy "do produkcji"? Nie jest to żadna Alfa, ani Beta, tylko stabilna wersja, która konkuruje na równi z innymi frameworkami. Zdarzają się bugi, jak wszedzie, ale są one łatane. Cytat Jak bardzo odstaje od 1.x? Architektura jest inna przez co można doznać szoku przesiadając się z pierwszej wersji na drugą. Natomiast biblioteka klas jest mniej więcej ta sama. Niektóre klasy nie różnią się niczym(nawet nazwy metod są identyczne), inne zostały nieco inaczej przepisane. Cytat Jak wiele tracę skupiając się na wersji 1.x? Po wydaniu stabilnej wersji Zend 2 było coś mówione że prace nad wersją 1 mają być zakończone. Tzn. ma nie być rozwijana, nie wiem czy coś się zmieniło bo nie bardzo interesuje się Zend 1, natomiast wiadomo jak to jest z oprogramowaniem, które nie jest rozwijane. Cytat Jak wiele zyskuję skupiając się na wersji 2.x? Przede wszystkim zyskujesz to co oferuje nowsza wersja PHP. Zend 2 wymaga PHP 5.3, przesterzenie nazw są standardem. Nie przypominam sobie tego w Zend 1. Masz okazje zaryzykować i skorzystać z frameworka, które być może będzie wyznaczało nowe standardy, za którymi inne firmy będą podążać, albo... będziesz miał okazje skorzystać z frameworka, któremu nadadzą nazwę 'Niewypał' i dość szybko zostanie zapomniany. |
Forum: Frameworki · Podgląd postu: #1075667 · Odpowiedzi: 3 · Wyświetleń: 1 120 |
Napisane: 21.08.2013, 17:26:53 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Odnośnie pytania o wynagrodzenie to brakuje najważniejszych informacji. Netto czy brutto, w ojro czy złotówkach |
Forum: Praca oferowana (Job offers) · Podgląd postu: #1061605 · Odpowiedzi: 3 · Wyświetleń: 1 052 |
Napisane: 29.07.2013, 14:24:07 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Dzieje się tak, ponieważ metoda isValid() sprawdza czy dane podane przez użytkownika są poprawne tj. przechodzą walidację. Ty natomiast nie masz żadnej walidacji, dlatego wyświetla 'ok'. Odnośnie tego:
Nie jestem pewny czy wyżej wymieniony parametr przyjmuje wartość true, natomiast jestem pewny że przyjmuje wartość 'required' gdyż jest to atrybut pola formularza
Jak zrobić aby formularz poddawany był walidacji? W modelu utwórz akcję w której zadeklarujesz validatory, filtry. Np: Register\Model\RegisterUser
W kontrolerze:
Wtedy nasze dane poddawane są walidacji. Cytat prosze wytłumaczcie mi o co chodzi z funkcja $form->getData skoro i tak pokazują aby pobierac dane z klasy request? ($this->getRequest()->getPost()); Ten kod:
Zwraca dane wpisane przez użytkownika Kod:
Zwraca dane po walidacji Wobraź sobie że użytkownik wpisuje w polu hasło takie coś: <p>mojetajnehaslo</p> Jeżeli po metodzie isValid() nie pobierzesz przefiltrowanych danych to walidacja nie ma zbytnio sensu. Ponieważ dalej będziesz operował na danych wpisanych przez użytkownika, a nie przefiltrowanych. |
Forum: Frameworki · Podgląd postu: #1058024 · Odpowiedzi: 2 · Wyświetleń: 535 |
Napisane: 13.10.2012, 08:38:12 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
Skrypt nie działa dlatego że w momencie wczytania pliku głównego nie ma elementu #navigation Rozwiązaniem tego problemu może być użycie metody live()
|
Forum: JavaScript · Podgląd postu: #999079 · Odpowiedzi: 2 · Wyświetleń: 210 |
Napisane: 12.10.2012, 10:57:16 | |
Grupa: Zarejestrowani Postów: 97 Dołączył: 5.05.2010 Ostrzeżenie: (0%) |
A czy koniecznie musi być nałożenie innego balonika na istniejący? Nie może być zamiana domyślnego na inny? W stylach:
JQuery:
HTML W miejscu gdzie są wszystkie kwadraciki z kolorem do wyboru, nalezy zrobić coś takiego: Nazwa ID musi odpowiadać nazwie klasy (#czerwony -> .czerwony) Nazwy elementów przyjąłem z mojego poprzedniego posta. Jeżeli są inne to wystarczy podmienić na własne. Zaznaczę jeszcze że jest to dość prymitywny sposób, ale szalenie prosty. |
Forum: Po stronie przeglądarki · Podgląd postu: #998921 · Odpowiedzi: 6 · Wyświetleń: 454 |
Nowe odpowiedzi Brak nowych odpowiedzi Popularny temat (Nowe) Popularny temat (Brak nowych) |
Sonda (Nowe) Sonda (Brak nowych) Zamknięty temat Przeniesiony temat |
Wersja Lo-Fi | Aktualny czas: 28.04.2024 - 10:40 |