sql >> Database teknologi >  >> RDS >> Mysql

Flere relationer til den samme model CakePHP

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.




  1. Hvordan indsætter man en ny række i databasen med AUTO_INCREMENT-kolonnen uden at angive kolonnenavne?

  2. SQL Server 2012 Service Pack 1 og kumulativ opdatering 1

  3. SQLSTATE[23000]:Overtrædelse af integritetsbegrænsning:1217

  4. Omdøb en brugerdefineret datatype i SQL Server (T-SQL)