Symfony3 - SwiftMailer:不存在的参数 "mailer_encryption"
Symfony3 - SwiftMailer : non-existent parameter "mailer_encryption"
我的应用程序在 Symfony 3.2.4 和 PHP 5.6.28
一切都是最新的:
我的 SwiftMailer 版本:
symfony/swiftmailer-bundle (v2.5.4)
当我阅读官方文档时,它写道我可以像这样为 SwiftMailer 添加参数:
config.yml
swiftmailer:
transport: "%mailer_transport%"
host: "%mailer_host%"
username: "%mailer_user%"
password: "%mailer_password%"
encryption: "%mailer_encryption%"
port: "%mailer_port%"
spool: { type: memory }
logging: true
parameters.yml
parameters:
database_host: localhost
database_port: null
database_name: BASE
database_user: root
database_password: root
mailer_host: smtp-relay._.com
mailer_port: 587
mailer_transport: smtp
mailer_encryption: tls
mailer_user: -
mailer_password: -
secret: -
但是当我 运行 a "composer update" 我总是得到同样的错误:
[Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException]
You have requested a non-existent parameter "mailer_encryption"
我必须在 config.yml 中评论 "encryption" 和 "port",然后再做一次 "composer update"。
这是 SwiftMailer Bundle 的正常行为?有人可以帮助我吗?
我正在使用 FOSuser。
一周前我是这样解决的:
# Swiftmailer Configuration
swiftmailer:
transport: "%mailer_transport%"
host: "%mailer_host%"
username: "%mailer_user%"
password: "%mailer_password%"
encryption: tls
port: 587
spool: { type: memory }
logging: true
如果有人再次遇到此问题,那是因为在更新时,作曲家会查看用作模板的 parameters.yml.dist
,如果您在 parameters.yml
中有模板中不存在的参数他们将被删除。
因此在 parameters.yml.dist
中您必须添加字段:
paremeters:
....
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_encryption: ~ (<!-- this line was added -->)
mailer_user: ~
mailer_password: ~
...
然后您可以像以前一样在 parameters.yml
中添加值并在 config.yml
中使用它
swiftmailer:
transport: "%mailer_transport%"
host: "%mailer_host%"
username: "%mailer_user%"
password: "%mailer_password%"
encryption: "%mailer_encryption%" (<!-- like this -->)
port: 587
spool: { type: memory }
logging: true
同样适用于端口
我的应用程序在 Symfony 3.2.4 和 PHP 5.6.28
一切都是最新的: 我的 SwiftMailer 版本:
symfony/swiftmailer-bundle (v2.5.4)
当我阅读官方文档时,它写道我可以像这样为 SwiftMailer 添加参数:
config.yml
swiftmailer:
transport: "%mailer_transport%"
host: "%mailer_host%"
username: "%mailer_user%"
password: "%mailer_password%"
encryption: "%mailer_encryption%"
port: "%mailer_port%"
spool: { type: memory }
logging: true
parameters.yml
parameters:
database_host: localhost
database_port: null
database_name: BASE
database_user: root
database_password: root
mailer_host: smtp-relay._.com
mailer_port: 587
mailer_transport: smtp
mailer_encryption: tls
mailer_user: -
mailer_password: -
secret: -
但是当我 运行 a "composer update" 我总是得到同样的错误:
[Symfony\Component\DependencyInjection\Exception\ParameterNotFoundException] You have requested a non-existent parameter "mailer_encryption"
我必须在 config.yml 中评论 "encryption" 和 "port",然后再做一次 "composer update"。
这是 SwiftMailer Bundle 的正常行为?有人可以帮助我吗?
我正在使用 FOSuser。
一周前我是这样解决的:
# Swiftmailer Configuration
swiftmailer:
transport: "%mailer_transport%"
host: "%mailer_host%"
username: "%mailer_user%"
password: "%mailer_password%"
encryption: tls
port: 587
spool: { type: memory }
logging: true
如果有人再次遇到此问题,那是因为在更新时,作曲家会查看用作模板的 parameters.yml.dist
,如果您在 parameters.yml
中有模板中不存在的参数他们将被删除。
因此在 parameters.yml.dist
中您必须添加字段:
paremeters:
....
mailer_transport: smtp
mailer_host: 127.0.0.1
mailer_encryption: ~ (<!-- this line was added -->)
mailer_user: ~
mailer_password: ~
...
然后您可以像以前一样在 parameters.yml
中添加值并在 config.yml
swiftmailer:
transport: "%mailer_transport%"
host: "%mailer_host%"
username: "%mailer_user%"
password: "%mailer_password%"
encryption: "%mailer_encryption%" (<!-- like this -->)
port: 587
spool: { type: memory }
logging: true
同样适用于端口