मुझे नहीं लगता कि आपको इनवॉइस और प्रेषकों और प्राप्तकर्ताओं के लिए एक जॉइन टेबल की आवश्यकता है। आप इन विदेशी कुंजियों को अपनी चालान तालिका में संग्रहीत कर सकते हैं। तब आपके संबंध होंगे:
<?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
और किसी भी अन्य स्थिति की आपको आवश्यकता हो सकती है।