-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Úkol 2 - Jozef Liška #18
base: master
Are you sure you want to change the base?
Conversation
@@ -31,8 +31,26 @@ public function categoryDetail(Request $request) | |||
throw new NotFoundHttpException("Kategorie neexistuje"); | |||
} | |||
|
|||
// paginator | |||
$em = $this->get('doctrine.orm.entity_manager'); | |||
$dql = 'SELECT p |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Tento blok DQL kódu je takmer totožný s ProductRepository->findByCategory() s tým rozdielom, že KnpPaginatorBundle to vyžaduje bez getResult() /takže som tu nemohol priamo použiť túto metódu/.
Vznikla mi tu však duplicita, tak by ma zaujímalo, či je nejaký best practice ako to presunúť do ProductRepository s tým aby som mal k dispozícií metódu bez a zároveň s getResult(). Samozrejme, napadajú ma možnosti ako to je možné spraviť, ale skôr ma zaujíma to, čo je osvedčené z praxe.
Vďaka.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Uvažuješ správně, určitě pokud je jeden kód duplikovaný, tak má cenu ho dát dohromady. Můžeš si tedy vytvořit metodu, která ten dotaz staví a ve findByCategory vrátit getResult nad jejím výsledkem
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Jo souhlas. Když je podíváš na ukázkové řešní v masteru, tak podobný problém jsem tam řešil já. Může to být ukázkové řešení. Nicméně nelíbí se mi, protože je tam porušený jeden z pricipů SOLID. Ale to vysvětlím.
@@ -31,8 +31,26 @@ public function categoryDetail(Request $request) | |||
throw new NotFoundHttpException("Kategorie neexistuje"); | |||
} | |||
|
|||
// paginator | |||
$em = $this->get('doctrine.orm.entity_manager'); | |||
$dql = 'SELECT p |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Uvažuješ správně, určitě pokud je jeden kód duplikovaný, tak má cenu ho dát dohromady. Můžeš si tedy vytvořit metodu, která ten dotaz staví a ve findByCategory vrátit getResult nad jejím výsledkem
Jozef Liška