0

各本に AuthorA フィールドと AuthorB フィールドがあるとします。どちらのフィールドもauthorsテーブルの外部キーです。

フィールドを持つテーブルの作成者: id | 名前

フィールドを持つテーブル ブック: id | 名前 | a_author_id | b_author_id |

author テーブルから「author a」と「author b」の両方のドロップダウン リストを含む本を作成できるようにするには、コントローラー、モデル、およびビューをどのように設定する必要がありますか? book モデルの「追加」ビュー内では、author-a (および author-b) のフォーム入力はどのように見えるでしょうか?

4

1 に答える 1

1

Bookモデルの異なるエイリアスを使用して、モデルに 2 つの belongsTo 関連付けをセットアップする必要がありますAuthor

public $belongsTo = array(
    'AAuthor' => array(
        'className' => 'Author',
        'foreignKey' => 'a_author_id'
    ),
    'BAuthor' => array(
        'className' => 'Author',
        'foreignKey' => 'b_author_id'
    )
);

著者リストを取得し、配列を表示するように設定し、とフィールドの両方のキー入力オプションを$this->Book->AAuthor->find('list')使用して同じ配列を指定するために使用します。'options'Form->input()a_author_idb_author_id

于 2013-03-17T08:08:22.683 に答える