#php #symfony

Da się jakoś sensownie dostać do obiektu Request z dowolnej medoty w kontrolerze? W tej chwili używam $this->get("request"); ale krzyczy mi że to niezgodne z wersją 3.
  • 36
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Witajcie mirki.
1. Mam projekt na #symfony2 i muszę zrobić koszyk. W jaki sposób zrobić to najlepiej? Aktualnie zamierzam zrobić tak, że będę przechowywał w bazie danych: użytkownik -> produkt.
2. Nie mam w pracy team leadera i muszę sobie radzić sam, więc może podpowiecie mi gdzie najlepiej upchnąć logikę koszyka (dodawanie, usuwanie, edycja produktów w koszyku)? Przy poprzednim projekcie logikę pakowałem do serwisów, ale jako że słabo znam strukturę
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#php #symfony #pytaniedoeksperta

Czy przekazywanie parametrów do formularzy można robić tylko przez services?

Wersja 3.0 wymaga przesłania typu do createForm, więc odpada przekazywanie parametrów do konstruktora formularza z poziomu kontrolera.
Używanie services jest w miarę ok jeśli chodzi o przekazywanie parametrów jak np EntityManager, ale co z innymi parametrami?
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Powiesz mi jaka jest zasada, kiedy używać options a kiedy rejestrować formularz jako usługę?


@gajowy_marucha: Rejestrujesz jako usługę, gdy masz jakieś stałe zależności – np FormType wymaga do pracy jakiegoś repozytorium czy innej usługi. Takie rzeczy przekazujesz w konstruktorze i niewygodnie jest to robić z kontrolera, więc robisz to w DIC.

Przykład: potrzebujesz zaciągnąć z bazki wartości do ChoiceTypea. Rejestrujesz swojego typea w DIC, wstrzykujesz repozytorium w konstruktorze, robisz
  • Odpowiedz
#symfony #php
Część formularzy mam działające jako usługi - przekazuję do nich dzięku temu EntityManager.
Tych formularzy jest sporo - muszę każdy definiować osobno jako usługę? Próbowałem zrobić typ bazowy, zarejestrować jako usługę i dziedziczyć z niego formularze które potrzebują dostępu do EM ale to nie działa...
  • 4
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Jurigag: Nie wiem czy dobrze rozumiem pytanie, ale wg mnie po znalezieniu w bazie pasujacego klienta robisz zamowienie->setClient($znaleziony); wtedy powinno sie zapisac dobrze pod warunkiem ze zrobisz flush($zamowienie) a nie flush(). Samo flush zapisze wszystko lacznie z nowym klientem pochodzacym z formularza.
Co do wrzucania nowego z formularza to dziala to tak jak powinno.
  • Odpowiedz
@uirapuru: w sumie jak zacząłem operować po prostu bez zmiennych a na referencji tj tylko korzystając z $rentOrder->getFinalCarUser / setFinalCarUser to poszło gładko, jak klonowałem tworzyłem jakieś nowe zmienny i inne cuda to się cuda robiły
  • Odpowiedz
Jestem świeżakiem w symfony, ale straznie mi się podoba, lecz napodkałem pewien problem. Mam akcje do której przypisałem parametr @Method("POST") i pomimo tego nie mogę jej wywołać. W momęcie, kiedy dopuszczam wszystkie rodzaje ("GET", "POST" itd.) i wykonuje POST'a pokazuje GET. O co tu chodzi ??
#symfony
  • 17
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Planuję napisać apkę, mam pewien pomysł, zastanawiam się natomiast nad architekturą, które według z was rozwiązanie byłoby lepsze?

#programowanie #php #webdev #symfony

Co lepsze?

  • Backend symfony3 - rest api, a klienci to angular i android/ios/wp autentykacja i autoryzacja za pomocą JWT 81.1% (30)
  • Wersja kliencka desktopowa napisana w Symfony3 z użyciem twiga + api jako np. bundle dla android/ios/wp 18.9% (7)

Oddanych głosów: 37

  • 37
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Witajcie mirki.
Taka sytuacja. Mam w bazie danych 2 tabele: user, product i vote. W tabeli vote zapisuję:
userid | type | recordid. W polu userid przechowuję id użytkownika który głosował, w polu type przechowuję typ głosowania (użytkownik lub produkt), w polu recordid przechowuję id rekordu z tabeli user lub product.
Chciałbym pobrać ile głosów zostało oddane na użytkownika, dlatego napisałem
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@mariecziek: Whatever, rozwiązałem to w taki sposób:

$query = $this->getEntityManager()->createQuery("SELECT u, COUNT(v.recordId) as user_votes
FROM AppBundle\Entity\User u
LEFT JOIN AppBundle\Entity\Vote v WITH v.recordId = u.id
WHERE u.roles
  • Odpowiedz
@mariecziek: musisz pobrać z bazy danych wszystkich użytkowników, którzy biorą udział w wyzwaniu, a następnie zrobić ORDER BY wyniki + achievements DESC.
Ty nie szukasz podpowiedzi jak to zrobić tylko całego rozwiązania. Zadaj precyzyjne pytanie to otrzymasz odpowiedź. Jak nie umiesz w dql to napisz w sql a później przepisz na dql
  • Odpowiedz
Ai No Corrida piosenka duetu Chaz Jankel i Kenny Young debiutuje jako ścieżka w podrzędnym filmie z 1980 roku-bez większego sukcesu. Rok później bierze się za nią
Quincy Jones w bliźniaczej aranżacji. Z cyklu gdzieś to już słyszałem, lub dobra muza ale nie wiem skąd:
Chaz Jankel i Kenny Young 1980r.
Quincy Jones 1981r. live
Nowoczesna interpretacja
Wykonanie szwedzkiej orkiestry z 2015r.
gaim - Ai No Corrida piosenka duetu Chaz Jankel i Kenny Young debiutuje jako ścieżka ...

źródło: comment_cLiW71IM5Kmswg1TNeSHC9avyRk5SzHU.jpg

Pobierz
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

załóżmy mam relacje one to many, chce za jednym zamachem poprzez Native Query w #doctrine pobrać relacje która jest jako MANY, jednakże chcę również zastosować LIMIT oraz OFFSET dla mojej relacji która jest jako ONE, jak tu ogarnąć to żeby pobrał mi dobrze ? czy jednak tą relacje many pobierać po prostu jakoś totalnie oddzielnie albo jako union ? union przejdzie ? czy może jakoś to zliczać idzie i dodawać
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#symfony #php #symfony2
jak wiadomo (albo i nie) kazdy domylnie w sf dziedziczy role po ROLE_USER
Teraz pytanie: w bazie mam kilka ról... jak pobrać z bazy tylko zwyklych userow, bez innych rol?
moge zrobic selecta z na sztywno wpisanym where roles = 'a:0:{}' ale moze macie jakies inne sposoby?
  • 6
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Jeśli to do jakiegoś pobocznego, rzadko używanego bajeru, a użytkowników nie masz specjalnie dużo, to zaciągnij wszystkich i sprawdź PeHaPem w pętli o których Ci chodzi.


@MacDada: tak to wlasnie zrobilem tyle ze wstrzykuje role hierarchy do serwisu, pobieram role usera i sprawdzam czy jest w hierarchii bo user ROLEADMIN nie pokaze ze ma rolemoderator albo role_user wiec trzeba hierarchie z security przeleciec
  • Odpowiedz
w sumie tak mnie mirki ciekawi - czy ktoś wie jakie partie kodu w #symfony i #doctrine działają najwolniej, mają największy wpływ na wydajnośc (robił jakieś testy, bawił się xdebugiem itp narzędziami) i ma jakieś materiały dotyczące tego ? chodzi mi o sam kod frameworka, bo w sumie w wolnym czasie bym mógł przepisać to na zephir(który potem jest kompilowany na c i działa to jako rozszerzenie do
  • 9
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@MacDada: ale ja nie będę pisał alternatywy dla doctrine mireczku - chcę tylko przepisać te klasy które wolno działają na zephir, który jest kompilowany do c, dzięki czemu bedą one działały po prostu szybciej, nadal będzie to doctrine i będzie on wymagany, po prostu doctrine zamiast korzystać z kodu php będzie korzystał z kodu który działa jako rozszerzenie do php w c :P jasne że alternatywa jest - ORM z
  • Odpowiedz
#symfony2 #symfony
Takie pytanie:
Mam encje post i tags - podrecznikowy przykład. Jak zrobić aby dodając tags do post były one w kolejności jakich je dodam? I żebym w takiej kolejności mógł je wyciągać?
User może dodać Max 5 tagow,
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#symfony #symfony2 #php
Jak wstrzyknąć jakieś EntityRepository do kontrolera?

Nie chciałbym używać lokalizatora w kontrolerze, bo to mało eleganckie rozwiązanie - nawet IDE się gubi i nie podpowiada metod.
  • 25
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Chciałbym zrobić w swojej appce autoryzację przez steam a potem pobrać avatar usera itp.
Macie może pomysł jak się za to zabrać? Może ktoś z was już przez to przechodził?

#symfony #symfony2
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

ktoś wie czemu nie ma informacji w metaDataCache o mojej klasie a jak pobiore ręcznie je korzystając z $em->getClassMetaData() to jest ? przez to mi nie działa ResultSetMappingBuilder bo wywala że nie ma takiego indexu
#symfony #doctrine #php #webdev
  • 5
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

groupSizePreRemove()


@gajowy_marucha: Unikaj w encji nazw typu PreRemove – nie ma znaczenia, że odpalasz to akurat przed usunięciem. Możesz przecież normalnie „ręcznie” odpalić sobie tę metodę z usługi czy kontrolera, więc wystarczy w nazwie samo groupSize(), bez wskazywania „kiedy”.

groupSizePreRemove
  • Odpowiedz
@qwelukasz:

po 1. przemyśl to jeszcze raz
po 2. odpuść sobie edytowanie bezpośrednio encji z formularza, zrób pośredni obiekt
po 3. punkt 1.
po 4. poczytaj o form collections
  • Odpowiedz