Nemyslím si, že potřebujete spojovací tabulku pro faktury, odesílatele a příjemce. Tyto cizí klíče můžete uložit do tabulky faktur. Vaše vztahy by pak byly:
<?php
class Invoice extends AppModel {
public $belongsTo = array(
'Sender' => array(
'className' => 'Account',
'foreignKey' => 'sender_id'
),
'Receiver' => array(
'className' => 'Account',
'foreignKey' => 'receiver_id'
)
);
}
Pokud pak potřebujete rozlišit faktury, které byly nebo nebyly odeslány, můžete také přidat sloupec s názvem status_id
nebo podobně a uložte další cizí klíč do nových statuses
tabulka se sloupcem ID a sloupcem názvu a následující vzorová data:
id name
== ====
1 Draft
2 Sent
A jakékoli další stavy, které můžete potřebovat.