初期の問題 protected function _initMail() { $this->bootstrap('mail'); 私のBootstrap.phpで次のように失敗します:
キャッチされない例外 'Zend_Application_Bootstrap_Exception' とメッセージ '循環リソース依存関係が検出されました'
解決策:独自のブートストラップ メソッド内で Ressource を呼び出さないでください (例: mail => _initMail)。
質問: 構成内のリソースのセットアップを簡素化して、コントローラー内の構成コードを減らすにはどうすればよいですか?
これまでのところ、 $bootstrap->getResource('mail') を取得して、私が達成しようとしたものと少し似たものを返します。Zend_Mail_Transport_Sendmail のインスタンスを返します (ほとんど空で、属性が設定されていません)。目標は、Zend_Mail:: の静的プロパティを config.xml で定義された値に設定することです。
特定のリソースをブートストラップする方法が適切に文書化されている場所がないため、これは実際に Zend リソースをブートストラップする方法に関する一般的な質問のようです。私は単に標準(およびブートストラップビューの例)に従いました。
私のapplication.iniは、メール構成に必要な情報を処理するように構成されているようです:
resources.view[] =
autoloaderNamespaces[] = "ZSC_"
wall.upload = APPLICATION_PATH "/uploads"
wall.uploadTemporary = APPLICATION_PATH "/temp"
resources.mail.transport.type = sendmail
;resources.mail.transport.host = "smtp.udag.de"
;resources.mail.transport.auth = login
;resources.mail.transport.username = nix
;resources.mail.transport.password = nix
resources.mail.transport.register = true ; True by default
resources.mail.defaultFrom.email = "support@conexco.de"
resources.mail.defaultFrom.name = "Mr Conexco Support"