Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

8 Stron V   1 2 3 > » 

destroyerr
Napisane: 9.08.2017, 20:05:24





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Zajrzyj sobie do pliku config/routing_dev.yml i zobacz jakie jeszcze trasy powinieneś wykluczyć. Wybacz, ale mam jeszcze uwagę odnośnie metody onKernelRequest, ja nie lubię czytać takich długich warunków, zdecydowanie preferuję taki styl:
  1. public function onKernelRequest(GetResponseEvent $responseEvent)
  2. {
  3. $request = $responseEvent->getRequest();
  4. if (!$this->configurationManager->get('site_disabled')) {
  5. return;
  6. }
  7. if ($request->get('_route') === 'maintenance') {
  8. return;
  9. }
  10. if (strpos($request->get('_route'), 'admin_') !== false) {
  11. return;
  12. }
  13.  
  14. $responseEvent->setResponse(new RedirectResponse($this->router->generate('maintenance')));
  15. }
  Forum: Frameworki · Podgląd postu: #1220242 · Odpowiedzi: 1 · Wyświetleń: 664

destroyerr
Napisane: 21.02.2016, 10:06:37





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Cytat
// jesli odkomentuje te linie, ponizsza zakomentuje otrzymuje blad: "Child "file" does not exist. "

A masz w formularzu pole o nazwie "file"?
  Forum: Frameworki · Podgląd postu: #1185255 · Odpowiedzi: 2 · Wyświetleń: 434

destroyerr
Napisane: 2.02.2016, 11:22:16





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Jeżeli chcesz testować różne warunki sprawdzania to może wydziel sprawdzanie do osobnych obiektów. Wtedy do obiektu rozwiązującego załadujesz sobie kolekcję takich "sprawdzaczy", ułatwione masz wtedy testowanie tego co chcesz.
  Forum: Object-oriented programming · Podgląd postu: #1183366 · Odpowiedzi: 7 · Wyświetleń: 2 431

destroyerr
Napisane: 11.07.2015, 21:13:08





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Jako ciekawostkę dodam, że przecież PHP może działać tak samo jak nodejs czyli asynchronicznie. Może działać również np. jak java, python etc. czyli może mieć serwer aplikacji napisany w php. Oczywiście nie są to na chwilę obecną rozwiązania często praktykowane, ale być może w najbliższym czasie się będzie to ulegać zmianie.
  Forum: Przedszkole · Podgląd postu: #1164780 · Odpowiedzi: 7 · Wyświetleń: 554

destroyerr
Napisane: 25.02.2015, 20:33:16





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Np. http://symfony.com/doc/current/cookbook/se...t_listener.html i wyszukanie tego nie stanowi żadnego problemu.
  Forum: Frameworki · Podgląd postu: #1147165 · Odpowiedzi: 8 · Wyświetleń: 915

destroyerr
Napisane: 23.09.2014, 12:25:16





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Raczej podejrzewałbym złe sformatowanie pliku yaml.
  Forum: PHP · Podgląd postu: #1126034 · Odpowiedzi: 7 · Wyświetleń: 1 999

destroyerr
Napisane: 4.08.2014, 18:34:08





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

To jeszcze dodaj czy encja Faktura i Produkt są w jakieś relacji. Podejrzewam, że tak, że jedna faktura może mieć wiele produktów. Jeżeli tak to taki formularz można stworzyć (ba! jakiego w Symfony2 się nie da), a w dokumentacji masz oczywiście przykład.
  Forum: Frameworki · Podgląd postu: #1118456 · Odpowiedzi: 1 · Wyświetleń: 415

destroyerr
Napisane: 12.04.2014, 20:48:49





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Dla repozytorium stworzyłeś interfejs ale dla encji już nie? Nie masz interfejsu i dlatego opierasz tą encję o dziwną konstrukcję dynamicznie tworzonych pól danego obiektu (masz włączone raportowanie błędów?). Gdybyś to przynajmniej do tablicy wrzucał. Uważam, że trzeba to zrobić standardowo, dodać odpowiednie pola do klasy i dorobić im gettery i settery.
Powtarzanie kodu w repozytorium json, odczytywanie pliku i jego zapisywanie możesz wyrzucić do osobnych metod.
Nazwa klasy ProductsManager jest sporna, ale moim zdaniem niewłaściwa. To właśnie klasa ProductsManager powinna się nazywać ProductsRepository, a Twoja klasa JsonProductReposiotry powinna się nazywać JsonProductsDAO.
Rzucanie wyjątku \Exception też jest niewłaściwe, powinieneś doprecyzować co poszło nie tak poprzez użycie właściwego typu wyjątku. Może być to nawet Twój wyjątek.
Przy trzech klasach na krzyż moim zdaniem ciężko jest ocenić elastyczność.
  Forum: Object-oriented programming · Podgląd postu: #1101805 · Odpowiedzi: 7 · Wyświetleń: 1 567

destroyerr
Napisane: 14.03.2014, 22:39:30





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Gdyby Twój pierwszy post posiadał taką treść nie byłoby "wycieczek personalnych".
Cytat
Nie projektuje się takich systemów tak, by worker jeszcze rozwidlał swoją pracę na parę procesów.

Dlaczego? Jeżeli mamy do jednej maszyny przypisanego jednego workera to dlaczego nie rozdzielić go na procesy (patrz: celery).

Cytat
1. Wykonanie kodu w czasie oczekiwania dostępu do magazynu danych (baza danych, cache, HDD) - można wyeliminować ten problem korzystając z asynchronicznych zapytań lub eventów.

Można, ale można też skorzystać z "wątków".

Cytat
2. Wykonywanie w tle kodu PHP niezwiązanego z danym requestem (zarządzenie serwisem, zdarzenia czasowe) - jeżeli nasz system sprawdza przy requeście czy coś trzeba takiego zrobić , to problem leży w jego architekturze i stanowi moim zdaniem poważną lukę. Nie do tego są requesty by wykonywać w ich czasie (procesie jednego requesta) takie rzeczy.

Tutaj się zgadzam. Potrafię jednak sobie wyobrazić, że ktoś ma taką potrzebę i realizuje ją w ten sposób. Nie uważam, że PHP powinno to ograniczać.

Cytat
3. Kod niezwiązany z requestami, np program działający w tle niezależnie od serwera HTTP - PHP nie jest językiem, w którym powinno się implementować takie rzeczy

Może jednak jakieś argumenty? Jeżeli cały model dziedziny mam napisany w PHP, do tego mam też komunikację z zewnętrznymi usługami to nie widzę sensu na przepisywanie tego do innego języka. Moim zdaniem to jest właśnie kluczowe miejsce istnienia wielowątkowości i wieloprocesowości w PHP.

Cytat
4. Podział kodu, który należy wykonać w requeście na niezależne od siebie części i wykonanie ich równolegle - jest to jedyne zastosowanie, które można uznać na pozór za sensowne. Zagłębajac się jednak głębiej w ten podpunkt łatwo dojść do wniosku, że serwer nieobciążony przez sieć zadziała wystarczająco szybko "1 process per request", a w przypadku coraz większego obciążenia na sieci takie rozwidlanie coraz bardziej traci sens, bo serwer i tak nie będzie miał zapasu mocy obliczeniowej, które mógłby zaoferować.

Nie przekonuje mnie to. Jeżeli na jednej stronie mamy do wyświetlenia dwa raporty, to wykorzystując dwa procesory odpowiedź powędruje do klienta szybciej niż wygenerowanie tych raportów jeden po drugim na jednym procesorze.
  Forum: PHP · Podgląd postu: #1096629 · Odpowiedzi: 8 · Wyświetleń: 1 213

destroyerr
Napisane: 17.01.2014, 18:25:53





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Cytat
w web/ znajduje się wszystko, co jest osiągalne dla użytkownika. Powyżej niego już nie.

Wynika z tego jasno, że się nie da. Oczywiście możesz próbować skonfigurować serwer http w inny sposób ale wtedy problem nie dotyczy Symfony2.
Rozwiązanie, do którego dążysz i sposób w jaki do niego dążysz możesz uznać za nieosiągalne w tym frameworku.
  Forum: Frameworki · Podgląd postu: #1085895 · Odpowiedzi: 7 · Wyświetleń: 1 252

destroyerr
Napisane: 14.12.2013, 21:21:35





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

sonata.admin.post to id usługi, a skoro usługa to powinna być pod kluczem services w pliku src/PortalSlubny/MainBundle/Resources/config/admin.yml.

Poza tym albo ładujesz ten plik z głównego pliku konfiguracyjnego, albo w rozszerzeniu. Ładowanie w obu miejscach nie ma sensu.
  Forum: Frameworki · Podgląd postu: #1080543 · Odpowiedzi: 1 · Wyświetleń: 435

destroyerr
Napisane: 13.10.2013, 17:39:00





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Cytat
Z kontekstem zgoda jak najbardziej, z zależnością już nie do końca.

Nie wiem co oznacza, że już nie do końca. Nie do końca się zgadzasz, że kolejna zależność (całkowicie niepotrzebna) jest złą praktyką?

Cytat
Najlepiej tak czy siak, taką funkcjonalność po prostu przenieść do serwisu, a w repozytorium tylko dane wybierać.

Od tego się zaczęła między nami dyskusja i od początku miałem taki punkt widzenia.

Cytat
W innym wątku (dot. właście czy KlasaManager czy Klasa) dobrą czytankę Ci wkleiłem dlaczego Manager.

Też wkleiłem tam czytankę i co z tego? To są tylko czyjeś opinie takie same jak moje. Poza tym można tam znaleźć argumenty za i przeciw. W tamtym wątku menadżer dotyczy zarządzania kolekcją, np. użytkowników, Ty postulujesz użycie menadżera do obsługi jednego koszyka. Jak na warunki SO to słabo punktowany wątek, a w dodatku zamknięty.
  Forum: Frameworki · Podgląd postu: #1069964 · Odpowiedzi: 24 · Wyświetleń: 2 129

destroyerr
Napisane: 13.10.2013, 15:23:00





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Cytat
I co w tym złego? Jeśli potrzebujesz w repozytorium dostęp do jakiegoś serwisu to w jaki sposób go obejdziesz? Z drugiej strony, to nie jest w żaden sposób powiązane z bazą, więc repozytorium lepiej zostawić.

Złe jest dlatego, że nadajesz repozytorium kolejną zależność (musisz tą zależność dostarczać przy pisaniu testów). Dodatkowo obciążając to repozytorium kolejnym zadaniem. Co gorsze zależność ta jest związana z jednym z kontekstów uruchamiania aplikacji (http), jeśli chciałbyś takie repozytorium wykorzystać podczas uruchamiania aplikacji z konsoli to masz problem.

@Foxx uważasz, że dokumentacja Symfony2 powinna przewidywać wszystkie możliwe klasy do obsługi czegokolwiek i podawać programistom w jakich folderach mają być? Musisz mieć obiekt koszyka i koniec. Operowanie na tablicach, wrzucanie jakiś indeksów zwiększanie ilości, gdzieś po kontrolerach jest śmieszne, ciężkie w testowaniu i jest proszeniem się o problemy. Jeśli zastanawiasz się gdzie umieścić taką klasę (a i nie zastanawiaj się w jakim folderze tylko w jakiej przestrzeni nazw) to posłuchaj pedro84 utwórz przestrzeń nazw/folder Cart. Tylko teraz już nie słuchaj pedro84 (to oczywiście tylko moje zdanie) i nie twórz klasy CartManager tylko po prostu Cart.
  Forum: Frameworki · Podgląd postu: #1069912 · Odpowiedzi: 24 · Wyświetleń: 2 129

destroyerr
Napisane: 12.10.2013, 18:09:52





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Ad. 1
Absolutnie nie repozytorium. Przecież musisz w takim wypadku dodać do repozytorium zależność od sesji. Moim zdaniem jest to zadanie dla obiektu schowek.

Ad. 2
Jeśli do produktu jest przypisana tylko jedna galeria to ja proponowałbym główne zdjęcie pobierać getterem właśnie z galerii.
  Forum: Frameworki · Podgląd postu: #1069804 · Odpowiedzi: 24 · Wyświetleń: 2 129

destroyerr
Napisane: 15.09.2013, 19:26:57





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Skoro go nadpisałeś to czemu miałby zostać wywołany konstruktor z rodzica?
  Forum: Object-oriented programming · Podgląd postu: #1065534 · Odpowiedzi: 8 · Wyświetleń: 1 148

destroyerr
Napisane: 21.08.2013, 09:48:18





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Potrzebujesz po prostu uruchomić proces który będzie wykonywał jakieś zadania. Pozostaje kwestia komunikacji z tym procesem. Tutaj jest podstawowe pytanie czy to ma działać na jednej maszynie (np. potoki) czy komunikacja ma być dostępna też przez sieć (gniazda).
Napisanie rozszerzenia do php przecież niczego nie zmienia w Twoim problemie. Nadal potrzebujesz uruchamiać proces i się z nim komunikować.

Cytat
PHP to IMO bardzo słaby wybór na proces działający w tle. Jeśli chodzi o rozwiązania socketowe to polecałbym Ci się zainteresować node.js

Możesz podać coś na potwierdzenie, że to słaby pomysł czy po prostu słaby i już. Można pozostać przy PHP: http://reactphp.org/ + http://socketo.me/.
  Forum: PHP · Podgląd postu: #1061471 · Odpowiedzi: 17 · Wyświetleń: 901

destroyerr
Napisane: 22.07.2013, 17:24:04





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Cytat
URL
domena.pl/strona
gdzie strona to kontroler we wzorcu MVC. Czyli standardowo.

Chyba stąd bierze się Twój problem. To nie ma związku z MVC. Faktycznie jest to jakiś nieformalny standard frameworków, ale nie dotyczy on samego MVC. Nazywa się to routing i nie koniecznie musi być to w formie podanej przez Ciebie (/strona => kontroler Strona). Wiele implementacji routingu pozwala na dowolne wzorce razem z elementami zmiennymi w tych wzorcach. Przykładowy wzorzec: /strona-statyczna/{title}, prowadzi do akcji StaticController::page($titlePage). Pasują do niego urle: /statyczna-strona/start, /statyczna-strona/kontakt, /statyczna-strona/o-firmie. Zadaniem kontrolera jest odebranie parametrów a urla i na ich podstawie pobranie odpowiedniego modelu (w Twoim przypadku będzie to strona).

Skorzystanie z frameworka powinno Ci pomóc w zrozumieniu tej kwestii, a pewni innych też.
  Forum: Object-oriented programming · Podgląd postu: #1057014 · Odpowiedzi: 9 · Wyświetleń: 1 582

destroyerr
Napisane: 27.06.2013, 21:27:08





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Ciężko zgadywać czy ten przycisk na pewno występuje, ale jeśli już to powinien być w ścieżce, którą podałeś. Czyli:
  1. $form->get('article')->get('check_data')->isClicked()
  Forum: Frameworki · Podgląd postu: #1053009 · Odpowiedzi: 2 · Wyświetleń: 390

destroyerr
Napisane: 25.06.2013, 22:46:46





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Cytat
Pytanie jak w tym bloku dostac sie do bazy danych

Cytat
Co zrobic zeby, wyswietlic w tym bloku nazwe ostatnio dodanego uzytkownika?

Z dokumentacji wynika, że taki blok to zwykła usługa. Wystarczy wstrzyknąć odpowiednie zależności, np. repozytorium użytkowników. Wtedy bez problemu pobierasz ostatnio dodanego użytkownika.
  Forum: Frameworki · Podgląd postu: #1052659 · Odpowiedzi: 6 · Wyświetleń: 533

destroyerr
Napisane: 15.06.2013, 21:07:43





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Program OpenSSL z jakimś instalatorem nie jest Ci potrzebny.

Mam do Ciebie zasadnicze pytanie, bo jest pewna kwestia, którą cały czas pomijasz a staram Ci się na nią zwracać uwagę. Czy rozumiesz, że są DWA pliki konfiguracyjne: dla apache (w folderze apache'a zresztą) i drugi dla php uruchamianego z konsoli (w folderze php)? Czy rozumiesz, że musisz edytować ten drugi?
  Forum: Frameworki · Podgląd postu: #1051026 · Odpowiedzi: 25 · Wyświetleń: 1 356

destroyerr
Napisane: 6.07.2013, 14:34:05





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Domyślnie jest gd (co można sprawdzić w dokumentacji). Ciężko coś doradzać. Napisz skrypt lub komende w sf2, odpal z konsoli, może wtedy będzie wiadomo coś więcej.
  Forum: Frameworki · Podgląd postu: #1054516 · Odpowiedzi: 7 · Wyświetleń: 766

destroyerr
Napisane: 4.06.2013, 16:04:19





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

To zajrzyj do tej dokumentacji i zauważ, że masz tam dwa pliki (dotyczy to metody z osobnym plikiem). Szablon z blokami formularzy i szablon który jest widokiem dla Twojej akcji. W szablonie, który jest widokiem powinieneś nadać formularzowi motyw na podstawie tego dodatkowego szablonu z blokami formularza. Po prostu tak jak jest w dokumentacji, bez żadnego kombinowania. Kod który pokazujesz jest pomieszaniem dwóch metod.
  Forum: Frameworki · Podgląd postu: #1049058 · Odpowiedzi: 6 · Wyświetleń: 738

destroyerr
Napisane: 17.05.2013, 19:27:48





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Cytat
A no to tak to ja sobie też mogę ... weź proszę zrób sobie przykład post_bind => zobaczymy czy CI się wywoła.... też tak myślałem jak Ty.

Ale ja sobie tego nie wypisałem ot tak. To są wyświetlone poszczególne kroki. Minimalny kod na potrzeby tego przykładu.

Cytat
Z twojego przepływu wynika, że post bin event powinien działać zawsze, bynajmniej po zbudowaniu formularza... nie powinno być problemu ze zmianą czegoś w formularzu ... a jednak , nie działa

Działa zawsze po zbindowaniu. W drugim poście tego wątku napisałem, że w zdarzeniu POST_BIND za późno jest już na modyfikacje (to samo jest w dokumentacji).

Jeśli chcesz rozwiązania problemu, to wrzuć minimalny kod, który łatwo da się uruchomić.
  Forum: Frameworki · Podgląd postu: #1045766 · Odpowiedzi: 10 · Wyświetleń: 621

destroyerr
Napisane: 17.05.2013, 11:53:56





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Cytat
No nie wiem co to jest zagnieżdżony formularz

Nie odczuwam przyjemności w przepisywaniu dokumentacji więc musisz tam sam zajrzeć.

Cytat
A kojarzysz jak tu odebrać to ID?

Nie napisałem tego przypadkiem w drugim poście tego tematu? Zamiast zdarzenia POST_SET_DATA skorzystaj z PRE_BIND i wtedy w $event->getData() masz tablicę z danymi wysłanymi do formularza. Włącznie z id, które jest Tobie potrzebne.
  Forum: Frameworki · Podgląd postu: #1045648 · Odpowiedzi: 10 · Wyświetleń: 621

destroyerr
Napisane: 11.05.2013, 14:23:23





Grupa: Zarejestrowani
Postów: 879
Dołączył: 14.06.2006
Skąd: Bytom

Ostrzeżenie: (0%)
-----

Encja nie wie o istnieniu repozytorium więc takie rozwiązanie odpada.
  Forum: Frameworki · Podgląd postu: #1044362 · Odpowiedzi: 10 · Wyświetleń: 555

8 Stron V   1 2 3 > » 

New Posts  Nowe odpowiedzi
No New Posts  Brak nowych odpowiedzi
Hot topic  Popularny temat (Nowe)
No new  Popularny temat (Brak nowych)
Poll  Sonda (Nowe)
No new votes  Sonda (Brak nowych)
Closed  Zamknięty temat
Moved  Przeniesiony temat
 

RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 15:11