sql >> Databáze >  >> RDS >> Mysql

Více vztahů ke stejnému modelu CakePHP

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.




  1. Je možné spustit více příkazů DDL v rámci transakce (v rámci SQL Server)?

  2. JSON_SEARCH() – Najděte cestu k řetězci v dokumentu JSON v MySQL

  3. Instalace ovladače QMYSQL

  4. Nesprávně nakonfigurovaná MySQL Důvod:nebezpečné použití relativní cesty