[Nextras/ORM]  – Závislost v Repository

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
David Kregl
Člen | 52
+
0
-

Ahoj,

snažím se do Repository dostat závislosti, ale netuším jak. Vím, že v Entity funguje injectLanguageService(), ale v Repository už tahle vychytávka není.

Mám v ArticleRepository třídu findByCurrentLanguage() a nechci jí při každém volání předávat jazyk, ale chci, aby si ho sama vytáhla z LanguageService.

Je to možné?

@hrach

Šaman
Člen | 2665
+
+3
-

Jestli na to nemá Nextras nějakou vlastní magii, pak je to záležitost dependency injection. Tedy jak dostat do instance nějaké další závislosti. Případně jak ty závislosti dostat jednoduše do všech instancí daného typu.
Na to první je nejlepší použít konstruktor a na to druhé decorator.

Jan Tvrdík
Nette guru | 2595
+
+2
-

@DavidKregl Jak píše @Šaman, nejjednodušší je přidat do config.neon něco jako

decorator:
	Nextras\Orm\Repository\IRepository:
		inject: on
David Kregl
Člen | 52
+
0
-

Boží, díky pánové. (fap, fap)

Editoval David Kregl (10. 1. 2017 23:14)

hrach
Člen | 1838
+
0
-

Díky všem, i za otázku! :-) Prosím, aby přístě jste nezakládali nová témata, ale pokračovali v dlouhém topicu, abychom tu tolik s nextras orm nespamovali :-) Díky :-)

Jan Tvrdík
Nette guru | 2595
+
0
-

Tohle zrovna byl dotaz mnohem víc na Nette DI, než na Nextras ORM, takže v pohodě.

hrach
Člen | 1838
+
0
-

Souhlas, idealne prejmenovat topic :-)

David Kregl
Člen | 52
+
0
-

@hrach Asi jsem slepý, ale kde mohu přejmenovat topic? Díky!