Dependency Injection nefunguje s Apitte/Core
- loskarlos
- Člen | 2
Ahoj, používám nette/di: v2.4.15 a apitte/core: v0.5. Php 7.2
Dependency injection funguje při používání samotného nette. Pokud ale spustím Apitte\Core\Application\IApplication, dependency injection nedodává dependencies.
Používám anotace:
/**
* @var EntityManager @inject
*/
public $entityManager;
Můj Index.php
use Apitte\Core\Application\IApplication as ApiApplication;
require __DIR__ . '/../vendor/autoload.php';
$container = require __DIR__ . '/../app/bootstrap.php';
$isApi = substr($_SERVER['REQUEST_URI'], 0, 4) === '/api';
if ($isApi) {
$container->getByType(ApiApplication::class)->run(); // DI nefunguje
} else {
$container->getByType(\Nette\Application\Application::class)->run(); // DI funguje
}
Je potřeba něco překonfigurovat v config.neon?
Jak docílím toho, aby dependency injection vkládalo objekty do proměnných
označených @inject v Appite tak jako to teď funguje v Nette?
- Ondřej Kubíček
- Člen | 494
a kde to injectuješ? anotace @inject
je by default zapnutá jen
pro presentery, jinde musíš přes constructor