Service ‚xy‘: Reference to missing service ‚mail‘

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

Ahoj, pokouším se v novém Nette 2.3 nastavit config.neon a jedné službě předat SmtpMailer.

služba se jmenuje emailRobot a je definována takto v common:

common:

	services:
		emailRobot:
			class: Utils\Emails\EmailRobot(@nette.mail,@translator,%appDir%,%emailRobotSettings%,@modelFactory::getModel('EmailRobotModel'), @simpleLinkBuilder)

pak mám např. development, které dědí od common:

development < common:

	mail:
		smtp: true
		host: "localhost"
		port: 25
		username: ""
		password: ""

Když si všimnete, snažím se do Utils\Emails\EmailRobot předat @nette.mail, (zkoušel jsem i @mail), ale nic z toho nejde – končí to hláškou Service ‚emailRobot‘: Reference to missing service ‚nette.mail‘. Dokázal by prosím někdo poradit?

David Matějka
Moderator | 6445
+
0
-
  • puvodne se sluzba jmenovala nette.mailer a melo by to fungovat i nadale (je tam alias)
  • nyni je to mail.mailer
  • ale ani ji nemusis primo zapisovat – je to sluzba, ktera se necha autowirovat. staci tam napsat ... a ono se to doplni (staci mit v konstruktoru uvedeny typehint) ;) takze Utils\Emails\EmailRobot(..., ..., %appDir% atd.
bouc
Člen | 8
+
0
-

David Matějka napsal(a):

  • puvodne se sluzba jmenovala nette.mailer a melo by to fungovat i nadale (je tam alias)
  • nyni je to mail.mailer
  • ale ani ji nemusis primo zapisovat – je to sluzba, ktera se necha autowirovat. staci tam napsat ... a ono se to doplni (staci mit v konstruktoru uvedeny typehint) ;) takze Utils\Emails\EmailRobot(..., ..., %appDir% atd.

Děkuji!