Seninle Justin değilim.
Ben otomatik işlemler için Kullanıcıları, yöneticileri ve kabuk komut gelebilir bazı eylemler tabanlı e-postalar tetikleyecek Modellerinin bir dizi var.
Bu birden çok yerde e-posta yeniden yazmak daha (bir sipariş kaydı 'iptal' olduğu zaman gibi) Model bir e-posta yanıtı merkezileştirme FAR kolaydır.
Ayrıca, diğer hasOne, belongsTo ya da biz kurallardır hasMany Modelleri için bazı çekirdek 'mantık' o çağlayan ele Modeller işlemleri otomatik var.
Örneğin, bir crontabbed kabuk komut dosyası daha sonra başka bir teklif yapmak için) (Teklif-> çağrıları Teklif 'sona' için) (Teklif-> sona aramaları, ama sonra iste-> dolacak () çağrıları olamaz eğer Orijinal talebi 'sona'. E-postalar süresi sona eğer herhangi bir yeni teklif alıcılara ve / veya istekte, ilk teklif süresi dolmuş alıcıya gönderilmesi gerekir. Bu crontabbed kabuğu veya Kullanıcılar tarafından veya İstekleri yönetmek ve elle Teklifler olabilir Yöneticileri tarafından çağrılabilir. Tüm farklı Kontrolörleri veya arabirimleri kullanarak.
Bu ben yaptım ve Modelleri ve Kontrolörler içine arayabilirsiniz şeydir:
if(empty($this->MailsController)) {
App::import('Controller','Mails');
$this->MailsController = new MailsController();
$this->MailsController->constructClasses();
$this->MailsController->Email->startup($this->MailsController);
}
Şimdi ben), ne oluşturmak için e-posta, kime Modelin içinde denir takip yoluyla, vb göndermek için hemen hemen her yerde bu çağrı ve (veri bulmak için ne için tüm mantığını merkezde mümkün duyuyorum:
$this->MailsController->orderMail($user_id,$this->id,$mode);
E-posta mantık hepsi temelde MailsController üzerinden dolaylı Modeller denir beri, ben rscherer en kodu denemeye gidiyorum.
Hope this helps,
oh4real