2016-06-14 11 views
0

Ich versuche grundlegende Container Tutorials auf Youtube, und ich bin auf diesem Teil stecken. Ich habe sichergestellt, dass eine Zweiginstanz gegeben wird und nicht ein Container, aber der Fehler tritt immer noch auf.Fehler: Slim-Instanz muss Slim Views Twig sein, Slim Container gegeben

heres der Behälterteil der index.php:

$container['view'] = function ($container) 
    { 
    $view = new \Slim\Views\Twig('src/Views', ['cache' => false,]); 
    $view->addExtension(new \Slim\Views\TwigExtension(
    $container->router, 
    $container->request->getUri() 
    )); 

    return $view; 
}; 

$container['loginController'] = function ($container){ 

    return new \App\Controllers\LoginController($container->view); 
}; 

routes.php:

$app->get('/', 'LoginController:login_redirect'); 

controller.php:

use Slim\Views\Twig as View; 

protected $view; 

public function __construct(View $view){ 
    $this->view = $view; 

} 

public function login_redirect($request, $response){ 
    $this->view->render($response, 'testing.twig'); 

} 
+0

Können Sie eine '' var_dump() '' '' $ container''? –

Antwort

1

Sollte nicht $container['view'] als Konstruktor übergeben werden Argument hier, anstelle von $container->view?

$container['loginController'] = function ($container){ 
    return new \App\Controllers\LoginController($container->view); 
};