Mirki robię "API" do WebSocketów i zastanawiam się jak to powinno być zrobione zgodnie ze sztuką.
Dajmy na to że mam 2 zdarzenia 'create' i 'update'.

Jak ja to widzę:
Tworzę 2 handlery CreateHander i UpdateHander. Dodaję je do kolekcji HandlersCollection.
Handlery implementują interfejs HandlerInterface który ma metody:
  • 16
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

#php #symfony #doctrine

Używam EntityListener, w postLoad robie deszyfrowanie, w prePersist / preUpdate szyfrowanie pola x.
Generalnie działa to dobrze, ale w preUpdate zawartość changeset - x - oldValue jest zaszyfrowana, tak jakby postLoad w ogóle było ominięte, tak ma to działać? Jak robię dump w odpowiednich momentach wszystko jest ok.

Czyli
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@gajowy_marucha:
setField(string $value) {
$this->field = $value;
$this->setFieldEncrypted(null); // trigger change on mapped field so onFlush can update encrypted value
  • Odpowiedz
Mireczki, robił ktoś w #doctrine uniwersalną metodę do szukania?
Ja próbowałem ale po miesiącach używania doszedłem do wniosku, że więcej szkody niż pożytku.
Chciałem mieć jedną metodę obsługującą parametry, warunki itp. Ale koniec końców zawsze zdarzał się szczególny przypadek który i tak trzeba było osobno zrobić.

W entity Repository robiłem coś w ten deseń:

protected
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czy jest jakiś warty rozważenia bundle, czy jakieś inne rozwiązanie, które automatycznie wygeneruje CRUD dla wszystkich encji w projekcie? Mam na myśli widok listy, formularzy edycji i dodawania orazi usuwanie.

Symfony 4+

#symfony #php
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Klopsztanga: Serio? W 2021 roku polecasz projekt, który swój rodowód ma w symfony2? Jak patrzę na ten kod, to nie wiem, czy mam się śmiać, czy wysłać im pull request z rm- rf /
Skomplikowana kobyła w której lata temu coś próbowałem zrobić i w-------m do kosza, tak jak ostatnio EasyAdmina zresztą - nie wiem który gorszy. Sonata nie ma racji bytu w żadnym nowym projekcie.
  • Odpowiedz
warto robić #symfony api platform czy może np. FOSRESTBundle czy jeszcze coś innego do stworzenia API? Z czego teraz korzystają w dużych firmach? Czego warto się nauczyć?
#php #programista15k
  • 11
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

I cyk projekcik działa na #php8, a wszystkie serwisy w projekcie już korzystają z constructor property promotion.
Composer się buntuje przy jednym zewnętrznym bundlu, ale na razie wszystko wygląda stabilnie.

A Wy co? Dalej PHP 5.0.2? ( ͡° ͜ʖ ͡°)

#php #symfony
  • 10
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Gdyby ktos chcial przezyc przygode (2 lata minimum, opcja na wiecej) - Organizacja Wspolpracy Gospodarczej i Rozwoju szuka specjalistow na ciekawe stanowiska do pracy w #paryz #francja. Wymagana znajomosc angielskiego i/lub francuskiego oraz chec do nauki tego drugiego (mniej znanego) jezyka.

Web Full Stack Developer
placa od 2960 eur na reke + mozliwe dodatki, np. dla wspolmazonka, relokacyjny, na dzieci...
#php #symfony #html #
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czy jest tu ktoś, kto używa a projektach symfony Turbo (wcześniej Turbolinks) i Stimulusa?
Zależy mi na wrażeniach z zastosowania tego paradygmatu w odróżnieniu od SPA, bo wszedłem dość mocno (na razie teoretycznie) w temat i póki co jestem zachwycony. Skoro jestem zachwycony, to coś musi być nie tak :D

#symfony #javascript #frontend #rails
  • 3
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Lipathor: Czemu nie? No co? Dobra praktyka to jeden serwies=jedno hasło. Gdyby ludzie się tego trzymali, to jedynym słabym punktem byłby wyciek bazy. Czyli marnujemy CPU, bo ludzie są leniwi. Ograniczenie kosztów serwerów o 30%, a co za tym idzie ograniczenie emisji CO2 to wielkie wyzwanie przed jakim stoi współczesne IT. Myślę, że Pani Sylwia Spurek poparłaby inicjatywę na poziomie UE, a i nasz rząd zgodnie z wybitną filozoficzną myślą
  • Odpowiedz
Mireczki. Zauważyłem ostatnio, że przy deployu (worker gitlaba + własny build.sh) nie ubija mi workerów messengera przez messenger:stop-workers. Supervisor wyłączony i w podglądzie joba na gitlabie mam poprawny komunikat od symfony, że zostały zatrzymane. Po wykonaniu builda i podniesieniu aplikacji, widzę jednak 2 takie same procesy messenger:consume. Dopiero ręczne ubicie i podniesienie przywraca do normy. Jak się zabrać do debugowania tego? Na 100% działało to poprawnie jeszcze kilka tygodni temu, więc wykluczam
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@pitu120: pewnie ilu programistów tyle opinii, ja na ogół przyjmuję takie założenia:
* logika związana bezpośrednio z endpointem, rzeczy potrzebne żeby zwrócić response - controller
* inna struktura danych w api, inna w bazie - dto + transformer
* zadania "poboczne", takie jak np. wysyłanie maili albo innych powiadomień - listener
* niestandardowe źródło danych, np. redis albo zewnętrzne api - provider/persister

Ale ostatecznie i tak zależy to od konkretnego
  • Odpowiedz
@kefas_safek: Generalnie dobrą praktyką jest posiadanie modułów oddzielonych od symfony. Ja zazwyczaj robię tak, że mam sobie src/AppBundle i jakiś na przykład src/App i w tym drugim mam sobie logikę biznesową podzieloną na różne moduły i oddzieloną kompletnie od frameworka, więc teoretycznie jakbym kiedyś zdecydował zmienić framework to zmieniam framework, a nie mój kod biznesowy. Tam też trzymam wszelakie encje, ale nie korzystam z annotacji, encja w src/App nie wie,
  • Odpowiedz
via Wykop Mobilny (Android)
  • 0
Jaki waszym zdaniem #cms w #php jest najprzyjemniejszy w nauce i developerce? Na codzień pracuje w #symfony i w sumie naszła mnie ochota żeby nauczyć się robienia prostych stronek opartych o CMS, jednocześnie nie wymyślając koła od nowa. Macie doświadczenie z CMSami z tej listy? https://symfony.com/projects/category/cms
Który z tych według was jest najlepszy?
  • 7
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Wstępna opinia na temat nowej inicjatywy od symfony - UX.
Gdy przeczytałem, że ekipa od symfony znów grzebie w obsłudze frontendu, to mnie ciarki przeszły. Dałem jednak szansę nowemu pomysłowi i zaskoczyło mnie to jakie problemy rozwiązuje lub przynajmniej stara się rozwiązać ów nowy podsystem.
Ktoś taki jak ja, który jest w 3/4 backendowcem dostaje propozycję prawie nie do odrzucenia:
"Utknąłeś z jQuery? To przynajmniej posprzątaj strukturę katalogów. Własny kod JS przenieś
  • 1
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@szczesc_borze: brzmi spoko, ja czasem sobie lubię w wieczór bądź dwa walnąć apkę, która mi na przykład wyeksportuje coś z jednego serwisu i np pokaże statsy albo wyśle jakieś powiadomienie i najwięcej j-----a zawsze było z frontem, żeby to jakotako tam gdzieś działało i nie wypalało mi oczu, prototypowanie w symfony takich apek jest stosunkowo szybkie.
  • Odpowiedz
Jak ja właśnie r--------m webpack w symfony to poezja. Zachciało mi się symfony UX.
Experimental feature xD. Recepta nadpisała wszystkie ważne pliki, yarn oszalał i odinstalował moduły. Robię reverta, bo oszaleję. (,)
#symfony #webpack
  • 2
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

Czy da się zrobić większy projekt w Symfony bez konfiguracji serwisów w yamlach?

W pracy wszystkie serwisy definiujemy w yml'ach, podczas gdy w prywatnych projektach nigdy nie miałem takiej potrzeby i zastanawiam się czy to jest dobra praktyka.
Jestem w stanie pracować zgodnie ze sztuką, stosując jakieś strategie czy po prostu SOLID i liczyć że autowire będzie wiedział jaką implementację w danym momencie potrzebuję? Bo w pracy takie rzeczy zawsze robię przez
  • 14
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Jurix: ogólnie mówiąc, pracując w Laravelu to nie lubię autowiring. Ciężko prześledzić logikę aplikacji, dlatego też logiczniej - ale bardzie pracochłonne - jest po prostu definicja serwisów.

Masz wtedy czarno na białym co się zadzieje.
  • Odpowiedz
@Jurix: Koledzy wyżej słusznie argumentują, ale ja mam propozycję, żebyś definiował serwisy w yamlu wtedy, gdy to jest konieczne, a dla większości zostawił autowiring. Ja dokładnie w ten sposób robię, bo to jest reguła YAGNI. Jeśli masz serwis, który nawet nie ma interfejsu, tylko jest to pojedynczą klasą (tak jak masz np repozytoria), to przecież nie będziesz definiował interfejsu na siłę? Nie bedzie Ci potrzebny, bo masz jeden konkretny obiekt.
  • Odpowiedz
Od około roku uczę się PHP, jakiś czas temu stwierdziłem że czas nauczyć się Symfony, ale strasznie topornie mi to idzie, nie podchodzi mi zupełnie. Z drugiej strony ostatnio chciałem coś napisać w Websocketach i wypróbowałem node.js, mimo że z JS znam tylko podstawy to bardzo dobrze mi się z niego korzystało, o wiele przyjemniej niż Symfony. Gdyby mi chodziło tylko o wygodę to zapewne przeniósłbym się na node.js, ale głównie zależy
  • 8
  • Odpowiedz
  • Otrzymuj powiadomienia
    o nowych komentarzach

@Virsky: dla mnie osobiście lepiej było najpierw nauczyć się Zend Framework 2-3 (obecnie Laminas), a dopiero później przeszedłem do Symfony 4+ i była to kwestia miesiąca. Patrząc na oba narzędzia mam wrażenie, że Symfony dużo rzeczy uprościło, co z jednej strony było błogosławieństwem, z drugiej przekleństwem. W Zendzie trzeba było dokładnie wiedzieć jak działa dany moduł, sama kwestia podejścia do obsługi bazy danych. W Symfony domyślnie jest doctrine, encję i
  • Odpowiedz
@programista5k: No tak, czasami bez Event Storming nie ma Event Sourcing.

Aktualnie pracuje w nietypowej firmie, gdzie IT jest tylko małym działem, szkolimy się, dużo rzeczy robimy sami, ale odkąd zaczęliśmy przyklejać karteczki na ścianę rozmawiając przy tym z innym pracownikami innych działów nasze życie stało się piękniejsze.

Do pełni szczęścia brakuje nam jeszcze mądrego wzorca Sagi w PHP.
  • Odpowiedz
@maciorqa: To nie jest tak że przechodzisz z jednego na drugi i koniec, drzwi zamknięte. Po prostu pisząc w SF możesz (i powinieneś) tworzyć piękny kod zgodny z dobrymi praktykami, wzorcami itp. W larwie bywa to ciężkie, chociażby z powodu który przytoczyłem wyżej, i kiedy już się znasz i sobie popiszesz w SF, to potem jak wskakujesz na larwę to patrzysz i się odechciewa. Larwa jest super do mniejszych projektów
  • Odpowiedz