PyroCms を使用して Codeigniter でメール システムを作成しようとしています。私のメール テーブルには、「受信者」行と、送信者と受信者のユーザー ID を含む「送信者」行があります。ID からユーザー名を取得するために、テーブルを結合しようとしていますが、単純に次のエラーが返されます。
エラー番号: 1066
一意のテーブル/エイリアスではありません: 'default_users'
SELECT `default_mailsystem`.*, `default_users`.`username` AS modtager, `default_users`.`username` as afsender FROM (`default_mailsystem`) LEFT JOIN `default_users` ON `default_mailsystem`.`recipent` = `default_modtager`.`id` LEFT JOIN `default_users` ON `default_mailsystem`.`sender` = `default_afsender`.`id` ORDER BY `id` DESC
ファイル名: /hsphere/local/home/brightmedia/reuseable.dk/modules/mail/models/mail_m.php
ライン番号: 13
私のコードは次のとおりです。
$this->db->select('mailsystem.*, users.username AS modtager, users.username as afsender')
->join('users', 'mailsystem.recipent = modtager.id', 'left')
->join('users', 'mailsystem.sender = afsender.id', 'left');
$this->db->order_by('id', 'DESC');
return $this->db->get('mailsystem')->result();
面白いことに、最後の「参加」操作を削除して、メールの受信者のみに参加するようにすると、すべてうまくいきます。