Ich glaube nicht, dass Sie eine Join-Tabelle für Rechnungen sowie Absender und Empfänger benötigen. Sie können diese Fremdschlüssel in Ihrer Rechnungstabelle speichern. Ihre Beziehungen wären dann:
<?php
class Invoice extends AppModel {
public $belongsTo = array(
'Sender' => array(
'className' => 'Account',
'foreignKey' => 'sender_id'
),
'Receiver' => array(
'className' => 'Account',
'foreignKey' => 'receiver_id'
)
);
}
Wenn Sie dann zwischen gesendeten und nicht gesendeten Rechnungen unterscheiden müssen, können Sie auch eine Spalte namens status_id
hinzufügen oder ähnliches, und speichern Sie einen anderen Fremdschlüssel zu einem neuen statuses
Tabelle mit einer ID-Spalte und einer Namensspalte und den folgenden Beispieldaten:
id name
== ====
1 Draft
2 Sent
Und alle anderen Status, die Sie benötigen.