Не мисля, че имате нужда от таблица за свързване на фактури и податели и получатели. Можете да съхранявате тези външни ключове в таблицата с фактури. Тогава вашите взаимоотношения биха били:
<?php
class Invoice extends AppModel {
public $belongsTo = array(
'Sender' => array(
'className' => 'Account',
'foreignKey' => 'sender_id'
),
'Receiver' => array(
'className' => 'Account',
'foreignKey' => 'receiver_id'
)
);
}
Ако след това трябва да различите фактури, които са били изпратени или не, можете също да добавите колона, наречена status_id
или подобен и съхранявайте друг външен ключ в нови statuses
таблица, с колона с идентификационен номер и колона с име и следните примерни данни:
id name
== ====
1 Draft
2 Sent
И всички други статуси, които може да са ви необходими.