Использование экземпляра ответа Slim 3 в другом классе с помощью автопроводки PHP-DI - PullRequest
0 голосов
/ 06 сентября 2018

Я новичок в автопроводке и в настоящее время использую PHP-DI.

У меня есть следующий контроллер:

<?php

namespace Registration\Actions;

class Home
{
    protected $responder;
    public function __construct(\Registration\Responders\Home $responder)
    {
        $this->responder = $responder;
    }

    public function __invoke($request,$response)
    {
        return $this->responder->send();

    }
}

и это класс респондента

<?php

namespace Registration\Responders;
use Psr\Http\Message\ResponseInterface as Response;

class Home
{
    protected $response;

    public function __construct(Response $response)
    {
        $this->response = $response;
    }

    public function send()
    {
        return 'Test';
    }
}

Я сталкиваюсь со следующей ошибкой:

Entry "Registration\Actions\Home" cannot be resolved: Entry "Registration\Responders\Home" cannot be resolved: Entry "Psr\Http\Message\ResponseInterface" cannot be resolved: the class is not instantiable Full definition: Object ( class = #NOT INSTANTIABLE# Psr\Http\Message\ResponseInterface scope = singleton lazy = false ) Full definition: Object ( class = Registration\Responders\Home scope = singleton lazy = false __construct( $response = get(Psr\Http\Message\ResponseInterface) ) ) Full definition: Object ( class = Registration\Actions\Home scope = singleton lazy = false __construct( $responder = get(Registration\Responders\Home) ) )

Что я делаю не так?

...