私は2つのモデルを手に入れました:
Mail
関係のあるクラス:
'relAttachments' => array(self::MANY_MANY, 'File', 'rel_mail_file(rel_mail, rel_file)'),
Mail
AdvancedArBehavior拡張機能がアタッチされているので、アタッチメントを1ライナーでリンクできます。これは次のようになります。
$mail->relAttachments = $attachments; // $attachments is an array of ids for `File` models
Mailque
関係のあるクラス:
'relMail' => array(self::BELONGS_TO, 'Mail', 'rel_mail'),
MailとMailqueを保存してリンクしたら、メールを送信した後に次のコードを実行します。
$mail = Mail::model()->findByPk($id);
$mailModel = $mail->relMail;
var_dump(count($mailModel->relAttachments)); // outputs 1
$mailModel->sent = time();
$mailModel->save();
//$mail->delete();
save()を呼び出すと、次のエラーが発生します。
exception 'CException' with message 'Property "File.rel_file" is not defined.' in ...\framework\base\CComponent.php:131
ここで何が起こっているのか誰か知っていますか?