Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 43 Pomógł: 0 Dołączył: 2.09.2012 Ostrzeżenie: (0%)
|
Czy istnieje jakieś przeciwskazanie, aby klasę User rejestrować jako service? Chodzi o to, że ustawiam w niej role użytkownika na podstawie różnych parametrów i niewielkich algroytmów. Dotychczas były to parametry zapisywane w bazie, w tabeli User, natomiast teraz chcę nadać rolę na podstawie parametru zapisywanego w configu, a żeby się do niego dostać, potrzebowałbym wstrzyknąć - sam jeszcze nie wiem co, ale choćby np. cały container. Ale czy to jest zalecane rozwiązanie?
|
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 1 590 Pomógł: 185 Dołączył: 19.04.2006 Skąd: Gdańsk Ostrzeżenie: (0%)
|
Cytat Myślałem, że skoro w dokumentacji jest: - zauważ, że musi być ta metoda, bo wymusza to interfejs.Natomiast ten fragment kodu jest owszem, niefortunny - bo nawet jeśli coś hardkodujemy to powinniśmy to chociaż okomentować. Można tak zrobić, jeśli każdy User ma mieć zawsze jedną i tą samą rolę - po co wtedy zapisywać to w bazie? Robi się wtedy stałą typu "USER_DEFAULT_ROLE" (albo "FIXED_ROLE") a metoda getRole zwraca tą stałą. Jeśli natomiast rola ma się dla użytkownika zmieniać, to chyba oczywiste, że powinieneś ją przechowywać w bazie danych. Natomiast jeśli potrzebujesz obiektu, który zawiera dane nie tylko z bazy oraz nie jest odwzwierciedleniem rekordu z tabeli bazodanowej to nie może to być encja - jednak w praktyce różnie bywa i nierzadko programiści wp.... do encji co popadnie. O tym co powinno być w encji a co nie decyduje zdrowy rozsądek - zazwyczaj drobna logika jest dopuszczalna (np. implementacja metody getFullName, która zwraca name + lastname lub inne takie). Jednak trzeba pamiętać, że "czystej" encji oczekuje wiele komponentów (formularze, walidatory, menedżer encji etc.) i majstrując przy niej możesz wywalić pół aplikacji (IMG:style_emoticons/default/Lkingsmiley.png) |
|
|
|
mundeck [Symfony]Entity jako service? 1.12.2016, 13:04:58
rad11 A takie coś nie może być ? http://stackoverflow.co... 1.12.2016, 13:13:42
mundeck Ale to wtedy za każdym razem musiałbym nadawać rol... 1.12.2016, 13:28:21
lukaskolista Encja zdecydowanie nie powinna być usługą. Jeżeli ... 1.12.2016, 14:27:20 
mundeck Cytat(lukaskolista @ 1.12.2016, 14:27... 1.12.2016, 17:07:35
Puszy Tak trochę może offtopowo bo w Symfony siedziałem ... 1.12.2016, 15:46:07
lukaskolista Tak, ale jeśli chcesz użyć usługi, to już musisz t... 1.12.2016, 19:58:17
LowiczakPL Jak jesteśmy przy Encjach i Serwisach to mam takie... 7.12.2016, 20:26:15
lukaskolista Cytat1. Mam zrobione: podczas rejestracji Listener... 8.12.2016, 21:56:47
LowiczakPL na razie4 specyzuję tylko pkt 1.
Korzystam z FOS... 8.12.2016, 23:50:50
Boshi @Lowiczak
http://stackoverflow.com/questions/1878... 9.12.2016, 01:52:25
Pilsener Cytatale może da radę to zrobić inaczej - oczywiśc... 9.12.2016, 08:32:28
kpt_lucek Ewentualnie zrobić to na Voter'ach, definiować... 12.12.2016, 11:28:40
LowiczakPL Dzięki za info, jestem mądrzejszy o kilka postów ,... 12.12.2016, 19:02:12 ![]() ![]() |
|
Aktualny czas: 24.12.2025 - 11:51 |