Symfony 1.4.6 تحميل المصانع. التكوين من المهمة
-
30-09-2019 - |
سؤال
لدي مجموعة التكوين التالية في ملف المصانع. ملف ...
all:
mailer:
param:
transport:
class: Swift_SendmailTransport
param:
command: /usr/sbin/sendmail -oi -t
... للتغلب على قضية "نقطة مزدوجة" كما هو موضح هنا.
عندما أقوم بتشغيل الرمز التالي ...
$mailer = $this->getMailer();
$message = $mailer->compose();
$message->setTo('foo@bar.com');
$message->setFrom('foo@bar.com');
$message->setSubject('Testing');
$message->setBody(
$mailer->getRealtimeTransport()->getCommand(),
'text/plain'
);
$mailer->send($message);
... داخل الإجراء ، كل شيء يعمل كما هو متوقع. لكن عندما أقوم بتشغيل نفس الرمز من داخل المهمة ، أحصل على خطأ فادح - PHP Fatal error: Call to undefined method getCommand
- لأن Swiftmailer يستخدم فئة النقل الافتراضية وليس Swift_SendmailTransport
فئة كما هو محدد في المصانع. تكوين.
أي أفكار لماذا لا يتم تحميل تكوين المصانع.
المحلول
لا تعرف مهمتك المصانع التي يجب تحميلها - حتى لو كان لديك تطبيق واحد فقط. تحتاج إلى تمرير معلمة تطبيق مثل هذا:
php symfony namespace:task --application=frontend
للحصول على تطبيق افتراضي في مهمتك ، قم بتحديث التكوين مثل هذا:
protected function configure()
{
$this->addOptions(array(
new sfCommandOption('application', null, sfCommandOption::PARAMETER_REQUIRED, 'The application name', 'frontend'),
));
}
لا تنتمي إلى StackOverflow