Jeg tror ikke, du behøver en join-tabel til fakturaer, afsendere og modtagere. Du kan gemme disse fremmednøgler i din fakturatabel. Dine relationer ville da være:
<?php
class Invoice extends AppModel {
public $belongsTo = array(
'Sender' => array(
'className' => 'Account',
'foreignKey' => 'sender_id'
),
'Receiver' => array(
'className' => 'Account',
'foreignKey' => 'receiver_id'
)
);
}
Hvis du så skal skelne mellem fakturaer, der er blevet sendt eller ej, kan du også tilføje en kolonne kaldet status_id
eller lignende, og gem en anden fremmednøgle til en ny statuses
tabel med en ID-kolonne og navnekolonne og følgende eksempeldata:
id name
== ====
1 Draft
2 Sent
Og alle andre statusser, du måtte have brug for.