Wszystko
Najnowsze
Archiwum
- 6
Pomóżcie Mirki, piszę RESTowe API na #symfony ( #symfony2 ), używam FOSRestBundle oraz FOSUserBundle, API miałoby działać bez prefixu np. "api" w url'u, użytkownik po wysłaniu nagłówka "Accept" dostaje określonym formacie dane (html, json, xml) i to wszystko mam, spoko, ale chciałbym tam wrzucić autoryzację tokenową obok sesji i tak żeby użytkownik, który loguje się korzystając z sesji lub tokena miał dostęp do tych samych endpointów. Do tokenów
- 0
@nie_mam_czasu: https://gist.github.com/tjamps/11d617a4b318d65ca583 i ogólnie "FOSRestBundle FOSOAuthServerBundle" w googlach
- 0
Treść przeznaczona dla osób powyżej 18 roku życia...
- 1
@gajowy_marucha: Prywatne banglają bo się wtedy nie nadpisują. Jak chcesz mieć protected lub public nie możesz mieć konfliktu nazw.
- 1
- 1
#programowanie #symfony2 ktoś z Mirków mógłby wskazać na rozwiązanie palącego problemu? Przeniosłem klientowi aplikację do fakturowania na inny serwer i po zalogowaniu wywala błędy. Zajmuję się tylko projektowaniem i wdrażaniem stron więc na tym nie znam się absolutnie. Więcej szczegółów kolega opisał na stacku:
http://stackoverflow.com/questions/32414315/symfony-500-on-move-to-other-server
http://stackoverflow.com/questions/32414315/symfony-500-on-move-to-other-server
mysql_set_charset('utf8');@sbuasha: jeśli widzisz taką radę w odpowiedzi to przestań ją czytać i szukaj dalej. Serio ;)
- 0
@wiktor12348: done
Formularze w #symfony2
Mam takie encje jak Question i Answer. Mogą one dotyczyć różnych innych encji. Umożliwiają one po prostu dodanie kolejnych pól do formularza, zdefiniowanych przez użytkownika.
Wymyśliłem że żeby dodać te pola najlepiej będzie zrobić kolekcję z odpowiedziami.
Mam encję Order. W OrderType dodaję kolekcję answers, a do $data dodaję nowe obiekty powiązanych Answer
Mam takie encje jak Question i Answer. Mogą one dotyczyć różnych innych encji. Umożliwiają one po prostu dodanie kolejnych pól do formularza, zdefiniowanych przez użytkownika.
Wymyśliłem że żeby dodać te pola najlepiej będzie zrobić kolekcję z odpowiedziami.
Mam encję Order. W OrderType dodaję kolekcję answers, a do $data dodaję nowe obiekty powiązanych Answer
- 0
@Harry19911: tak jak piszesz, trzeba już w createForm załadować entity z danymi potrzebnymi do kolekcji
- 0
@Jaslanin: to trochę bardziej skomplikowane. tak jak na obrazku. to rozwiązanie o którym piszesz, to pierwszy przypadek który już mi działa. a drugi nie zadziała bo to jest kolekcja, więc nie mogę wywołać addAnswer...
ale chyba zamiast kombinować robiąc kolekcję dla odpowiedzi, muszę zrobić dla zamówienia/produktu w zamówieniu jakiś model w którym dynamicznie dodam atrybuty do obiektu po to by się zbudował formularz, a później z wartości przy zapisie ręcznie
ale chyba zamiast kombinować robiąc kolekcję dla odpowiedzi, muszę zrobić dla zamówienia/produktu w zamówieniu jakiś model w którym dynamicznie dodam atrybuty do obiektu po to by się zbudował formularz, a później z wartości przy zapisie ręcznie
źródło: comment_hSlVrhNEkhJ9s41StPnl28ALJ0h9G57t.jpg
Pobierz@wojjaskula: Ok, już odpowiadam.
PHP to nie Java czy C#. Dopisanie na górze pliku
Symfony ma swoje
PHP to nie Java czy C#. Dopisanie na górze pliku
use nie załącza pliku z daną klasą. Trzeba to zrobić ręcznie przy pomocy require. Istnieje jednak magiczna funkcja __autoload(). Jak ją stworzysz, to zostanie wywołana za każdym razem, gdy klasa nie zostanie znaleziona, żeby funkcja ta załadowała plik z nią. Symfony ma swoje
__autoload() w app/autoload.php. Autoload ten ładuje klasy z katalogu vendor/- 0
@Damian1998: wystarczyło 3mc przesiadki z php na jave i już się o takich rzeczach nawet nie myśli ;)
@wojjaskula: skoro bardzo chcesz kategorie z bundla to zakręć się przy tree view w doctrine extensions. A drugie pytanie zabrzmiało jakby w internecie były bundle na każdy temat magisterki..
@wojjaskula: kolega wyżej dobrze poleca ci Tree z doctrine extensions. Zainstaluj sobie do tego bundle
Do uploadu plików powiązanych z wpisami w bazie radzę użyć bundla. Spróbuj
stof/doctrine-extensions-bundle (i poczytaj o nested set, jeżeli nie wiesz jak to działa).Do uploadu plików powiązanych z wpisami w bazie radzę użyć bundla. Spróbuj
vich/uploader-bundle.#php #symfony2
Czy można zrobić w symfony pole które ma pogrupowane checkboxy ale typu entity? Czy trzeba wczytać dane do tablicy i potem zrobić pole choice? Wiem że w choice się da robiąc tak:
$choices = array('grupa 1' => array('a', 'b', 'c'), 'grupa 2' => array('d', 'e', 'f'))
Wiem że można przez themes jakoś i przekazać do theme kompletne wartości z bazy a nie tylko id i value.
Czy można zrobić w symfony pole które ma pogrupowane checkboxy ale typu entity? Czy trzeba wczytać dane do tablicy i potem zrobić pole choice? Wiem że w choice się da robiąc tak:
$choices = array('grupa 1' => array('a', 'b', 'c'), 'grupa 2' => array('d', 'e', 'f'))
Wiem że można przez themes jakoś i przekazać do theme kompletne wartości z bazy a nie tylko id i value.
- 1
Treść przeznaczona dla osób powyżej 18 roku życia...
- 1
W kontrolerze przekazuję entity manager do konstruktora formularza i dalej do mojego custom field w formularzu.
@gajowy_marucha: To możesz sobie uprościć: wstrzykuj EM w konstruktorze Type'a i zarejestruj go w DIC: http://symfony.com/doc/current/book/forms.html#defining-your-forms-as-services
W ten sposób kontroler nie musi pośredniczyć w przekazywaniu zależności. ta sama idea dla transformersów – możesz je wstrzyknąć w konstruktorze Type'a, a same transformersy oczywiście mogą dostać EM także w konstruktorze.
BTW, jak masz chwilę, to proponuję,
#symfony2 no to teraz formularze...
$product = $this->getDoctrine() ->getRepository('PolAppBundle:Reg') ->findOneByBest(1); $bestRegistrar- 0
@wiktor12348: tak, ID 1 jest unikalne w bazie, całą reszta kolumn ma 0 i docelowo tak ma być, że tylko jeden rekord może mieć "1" przydzieloną. Coś na zasadzie "domyślny rekord"
@qwelukasz: W zasadzie poprawnie zrobione ale nie wiem w jakim celu. Jak masz więcej pól w formularzu i chcesz zapisać to do bazy to jest to zły pomysł. Ale nie znam Twoich intencji :)
@qwelukasz: a no to o tym nie wspomniałeś. I chcesz to zrobić z poziomu sonaty ? W takim razie musisz nadpisać widok sonaty, zrobić zwykły formularz z typem file, do tego nowy kontroler i zrobione :)
@qwelukasz: no tak ale jeśli nie chcesz zapisywać tych plików (tak żeby użytkownik widział że plik został dodany) to będzie to conajmniej dziwnie wyglądało jak użytkownik chcąc wrzucić plik będzie musiał kliknąć w admina, później pojawi mu sie pusta tabelka, później musi kliknąć w dodaj nowe a po dodaniu dalej będzie miał pustą tabelke :)
#symfony2 #php troche #programowanie
muszę zaimplementować w symfony komunikację poprzez API z kilkoma serwisami... - jak właściwie powinienem to zrobić i od czego zacząć?
Komunikacja odbywa się poprzez SOAP, wygląda to sandardowo, logowanie, podpisanie żądania itp...
może ktoś dać jakiś zarys?
Teoretycznie dobrze by było z tego zrobić osobny bundle co by było reusable w przyszłości ale to nie ten level here...
Czy powinienem to zrobić
muszę zaimplementować w symfony komunikację poprzez API z kilkoma serwisami... - jak właściwie powinienem to zrobić i od czego zacząć?
Komunikacja odbywa się poprzez SOAP, wygląda to sandardowo, logowanie, podpisanie żądania itp...
może ktoś dać jakiś zarys?
Teoretycznie dobrze by było z tego zrobić osobny bundle co by było reusable w przyszłości ale to nie ten level here...
Czy powinienem to zrobić
@qwelukasz: SOAP? Ja bym zaczął od szukania mocnego sznura i grubej gałęzi
@qwelukasz: Ja Ci mogę dać taki przykład kontrolera: https://gist.github.com/anonymous/2b3bc826753e032e78b5
Przecież Jaslanin napisał Ci jak to masz zrobić i ja uważam, że tak będzie dobrze (DAO powinno zwracać DTO, a dopiero repozytorium encje). Napisz na podstawie tego jakiś prototyp i wtedy zadawaj pytania.
Przecież Jaslanin napisał Ci jak to masz zrobić i ja uważam, że tak będzie dobrze (DAO powinno zwracać DTO, a dopiero repozytorium encje). Napisz na podstawie tego jakiś prototyp i wtedy zadawaj pytania.
- 4
@qwelukasz:
używaj tylko jednego bundla głównego, poza 1 AppBundle w którym masz całą logikę biznesową projektu, kolejne traktuj jako pluginy, czyli elementy które będziesz używał w wielu miejscach, taka jest ogólnie idea bundlii
innymi słowy bundle nie służą do tego by oddzielać warstwy aplikacji, tylko po to by tworzyć komponenty do ponownego użycia (np. newsletter, drukowanie faktury itd.), jeżeli nie ma sensu, potrzeby ponownego użycia czegoś w innym projekcie bundle jest
używaj tylko jednego bundla głównego, poza 1 AppBundle w którym masz całą logikę biznesową projektu, kolejne traktuj jako pluginy, czyli elementy które będziesz używał w wielu miejscach, taka jest ogólnie idea bundlii
innymi słowy bundle nie służą do tego by oddzielać warstwy aplikacji, tylko po to by tworzyć komponenty do ponownego użycia (np. newsletter, drukowanie faktury itd.), jeżeli nie ma sensu, potrzeby ponownego użycia czegoś w innym projekcie bundle jest
- 1
@qwelukasz: http://elnur.pro/symfony-without-bundles/ poczytaj, polecam
#symfony2 #programowanie #php
mam coś takiego
mam coś takiego
test_main: resource: "@TestMainBundle/Resources/config/routing.yml" prefix: /{_locale}/- 0
@qwelukasz: próbuj w trybie incognito i po próbie zamykaj incognito i ponownie ;) wtedy i ciacho i sesja będzie nowa i nie będzie sytuacji jak któreś jest gdzieś zapisane i ci nie zmiena
- 0
#symfony2
Mam encje A, B, C oraz Trio. W encji Trio przechowuję relację ManyToOne do A, B i C. Chciałem zrobić custom field w którym wybieram A, B i C a otrzymuję Trio (lub błąd że takie Trio nie istnieje).
TrioType.php
Mam encje A, B, C oraz Trio. W encji Trio przechowuję relację ManyToOne do A, B i C. Chciałem zrobić custom field w którym wybieram A, B i C a otrzymuję Trio (lub błąd że takie Trio nie istnieje).
TrioType.php
public function buildForm(FormBuilderInterface $builder, array $options)- 0
@object_Object: przy FormEvents::PRESETDATA mam pusty $event->getData();
- 5
@object_Object: na razie zrobiłem tak że dodałem czwartego selecta, od Trio. W HTML go ukryłem a w evencie PRE_SUBMIT nadpisuję na podstawie A B i C. Zmodyfikowałem edytowaną encję by przyjmowała tablicę tych 4 obiektów i brała samo Trio. Działa
źródło: comment_qTFmS6RRJ05ehI0uq7Q0CsWiMbVJXh90.jpg
Pobierz- 1
Treść przeznaczona dla osób powyżej 18 roku życia...
@DiKey: Nie
- 1
@DiKey: Dobra, więc jeśli faktycznie pytasz jak „zrobić to dobrze”, to tak jak pisałem wcześniej, Symfony nie ma (aż takiego) znaczenia: Twoim zadaniem z dziedziny architektury oprogramowania jest:
* zidentyfikować potrzeby klienta
* opisać te potrzeby za pomocą kodu (model, use case'y)
* dorobić szczegóły techniczne jak persystencja czy UI (widoki, routing, etc – to „tylko” warstwa
* zidentyfikować potrzeby klienta
* opisać te potrzeby za pomocą kodu (model, use case'y)
* dorobić szczegóły techniczne jak persystencja czy UI (widoki, routing, etc – to „tylko” warstwa
- 1
Treść przeznaczona dla osób powyżej 18 roku życia...
- 1
Treść przeznaczona dla osób powyżej 18 roku życia...
- 1
@gajowy_marucha: Zapewne się da, ale pewnie musiałbyś bardziej pogrzebać w dokumentacji/kodzie (nie potrzebowałem nigdy, to nie wnikałem).
Tak czy siak: zamiast latania na arrayach DTO świetnie wpisuje się w OOP.
http://nomad.so/2014/06/stop-abusing-arrays-in-php/
Tak czy siak: zamiast latania na arrayach DTO świetnie wpisuje się w OOP.
http://nomad.so/2014/06/stop-abusing-arrays-in-php/
#php #symfony2 #programowanie
Mam problem z tym bugiem w Symfony: https://github.com/symfony/symfony/issues/11596
Ma ktoś jakiś pomysł jak wymusić przypisanie błędów do formularza za formularzem z
Ktoś coś? Miał ktoś podobny problem?
Mam problem z tym bugiem w Symfony: https://github.com/symfony/symfony/issues/11596
Ma ktoś jakiś pomysł jak wymusić przypisanie błędów do formularza za formularzem z
inherit_data=true? Próbowałem ręcznie wywołać validatora a potem przypisać wyniki za pomocą ViolationMapper ale wywołane addError na takim formularzu za nieszczęsnym formularzem z inherit_data=true zdaje się nie działać.Ktoś coś? Miał ktoś podobny problem?

















Nie wiem czy dobrze zrozumiałem tutoriale symfony2 .. - robie sobie wstępny projekt. Czy layout strony ma być zawarty w app/resources/views/moj_layout ? A cały content strony newsy/logowanie etc. ma być w paczkach ?
Header, Footer, Nav często jeszcze drobniej podzielony i oparty o wiele dziedziczeń i spięte w base, base-popup, base-user itp. Wszystko uzupełniane o content z bundla. Wtedy tylko css,js, images trzymasz w "web/*"