Модель CakePHP принадлежит - PullRequest
1 голос
/ 25 марта 2011

Может кто-нибудь объяснить мне, что означает следующее?

var $belongsTo = array(
    '**EventOrganiser**' => array(
        'className' => '**EventOrganiser**',
        'foreignKey' => '**event_organiser_id**',
        'conditions' => '',
        'fields' => '',
        'order' => ''
    )
);

Я пометил содержимое с Содержимое в коде. На что ссылается каждый из EventOrganiser?

1 Ответ

3 голосов
/ 25 марта 2011
  1. Название ассоциации:

    $belongsTo = array(
        'EventOrganiser' => array(
    

    Это имя, к которому ассоциация будет доступна, как из модели:

    $this->Foo->EventOrganizer->...
    
    array(
        'Foo' => array(
           ...
        ),
        'EventOrganizer' => array(
           ...
        )
    )
    

    Это полностью произвольное имя, вы можете называть его как угодно. Он будет отражаться в результатах запроса при поиске из этой модели и при доступе к связанной модели из этой модели.

  2. Название класса:

    'className' => 'EventOrganiser',
    

    Это имя класса, фактическое имя модели, которое должно использоваться для связанной модели.

  3. Внешний ключ:

    'foreignKey' => 'event_organiser_id',
    

    Это имя столбца внешнего ключа в базе данных, которое будет использоваться для этой ассоциации.

Последние два не являются произвольными, они должны быть правильными. Обычно Cake может угадать их, основываясь на соглашениях об именах имени ассоциации.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...