PHP Nette - Parameter in __construct() has no class type hint or default value

29.06.2019 napsal NetteInterface

Vyřešeno PHP Nette - Parameter in __construct() has no class type hint or default value
Dobrý den,

při vytváření konstruktoru pro mojí factory (továrničku) obdržím chybu:

Nette\DI\ServiceCreationException Service '3' (type of App\Model\Emails): Parameter $from in __construct() has no class type hint or default value, so its value must be specified.

Samozřejmě, že chybu jsem si přeložil, ale nevím jak to vyřešit. Prosím o pomoc:

    public function __construct(Nette\Database\Context $database, Nette\Mail\IMailer $mailer, Settings $modelSettings, Logs $modelLogs, $from, $to, $subject, $message, $template, $priority)
    {
        $this->database       = $database;
        $this->mailer         = $mailer;
        $this->modelLogs      = $modelLogs;
        $this->modelSettings	= $modelSettings;

        $this->from           = $from;
        $this->to             = $to;
        $this->subject        = $subject;
        $this->message        = $message;
        $this->template       = $template;
        $this->priority       = $priority;
    }

RE: PHP Nette - Parameter in _…

30.06.2019 odpověděl NetteInterface

Zkontrolováno

Ahoj,

chybu "Nette\DI\ServiceCreationException Service '3' (type of App\Model\Emails): Parameter $from in __construct() has no class type hint or default value, so its value must be specified" jsem vyřešil nastavením hodnot v konstruktoru na NULL:


public function __construct(Nette\Database\Context $database, Nette\Mail\IMailer $mailer, Settings $modelSettings, Logs $modelLogs, $from = NULL, $to = NULL, $subject = NULL, $message = NULL, $template = NULL, $priority = NULL)
{
$this->database = $database;
$this->mailer = $mailer;
$this->modelLogs = $modelLogs;
$this->modelSettings = $modelSettings;

$this->from = $from;
$this->to = $to;
$this->subject = $subject;
$this->message = $message;
$this->template = $template;
$this->priority = $priority;
}
Tento web používá k poskytování služeb, personalizaci reklam a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tím souhlasíte. Další informace