Отключить swiftmailer золотник в Symfony в среду
у меня возникли проблемы с отправкой массовых писем с symfony2 через консольную команду. Я хочу отключить буферизацию почты для env, в котором работает консоль, но продолжайте работать для env по умолчанию. Поэтому у меня есть это в config.в формате YML:
swiftmailer:
transport: %mailer_transport%
host: %mailer_host%
port: %mailer_port%
username: %mailer_user%
password: %mailer_password%
spool: %mailer_spool_type%
и затем каждый env имеет его на параметрах, таких как parameters_prod.в формате YML:
parameters:
mailer_transport: smtp
mailer_host: smtp.someserver.net
mailer_port: 587
mailer_user: "someuser"
mailer_password: "somepassword"
mailer_spool_type: { type:memory }
затем для консоли env я использую parameters_cron.в формате YML:
parameters:
mailer_spool_type: ~
проблема заключается в использовании ~
или null
фактически не поворачивается от катушки, но он использует значения по умолчанию {cache: file, path: %kernel.cache_dir%/swiftmailer/spool }
есть ли способ, чтобы отключить катушку, просто изменив параметры или есть лучший способ?
1 ответов
по-видимому, единственный способ отключить буферизацию электронной почты-полностью исключить запись катушки из файла конфигурации. После включения записи катушки в основной файл конфигурации невозможно отключить буферизацию для определенной среды.
тем не менее, вы можете выполнить противоположное тому, что вы предлагаете: вы можете отключить буферизацию электронной почты по умолчанию и включить ее в определенных средах.
оставить в config.yml
:
swiftmailer:
transport: %mailer_transport%
host: %mailer_host%
port: %mailer_port%
username: %mailer_user%
password: %mailer_password%
и включите его в config_prod.yml
:
swiftmailer:
spool: %mailer_spool_type%