определить ассоциацию модели без второй модели - PullRequest
0 голосов
/ 08 марта 2012

Есть ли способ в CakePHP 1.3 определить ассоциацию модели, не имея модели для связанной таблицы?Например:

<?php

    class SomeModel extends AppModel 
    {
        var $useTable = 'some_table';

        var $belongsTo = array(
            'AnotherModel' => array(
                // association data here
            )
        );
    }
?>

Где AnotherModel на самом деле не имеет файла модели.Я просто хочу определить таблицу, которую будет использовать модель, и детали ассоциации.Возможно ли это?

1 Ответ

0 голосов
/ 08 марта 2012

Быстрый ответ: все должно быть в порядке. Ты это пробовал? В худшем случае он не будет работать без файла, поэтому просто добавьте файл модели. Это занимает все две секунды:

<?php
class AnotherModel extends AppModel {
    var $name = 'AnotherModel';
}
?>

Готово! * * 1004

UPDATE

Если вы будете следовать соглашению об именах таблиц, вы сможете ссылаться на таблицу, используя соответствующее имя без файла модели. Например:

  • my_models = MyModel
  • your_models = YourModel
  • model_tables = TableModel

Однако, если у вас есть таблица, которая не соответствует соглашению, вы должны создать файл модели, который определяет $useTable, чтобы указать, к какой таблице он относится:

  • some_table = файл модели: SomeTable, где $useTable = 'some_table';
  • another_model = файл модели: CustomModel, где $userTable = 'anotherModel';

Другого пути нет. CakePHP не волшебство. Нужно знать, на какую таблицу ссылаются. Если вы не делаете соединения. Тогда в объединении вы можете ссылаться на таблицу.

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