CakePHP несколько моделей - PullRequest
0 голосов
/ 02 марта 2012

Привет, я использую cakephp в течение 1 месяца, и я нашел этот код в веб-приложении, которое я исправляю.

$availableParts = $this->Line->Part->getAvailablePartsForLineWithComponentType($id, $componentType['ComponentType']['id'], $selectedParts);

Линия и Часть - две модели, и я не понимаю, почему упоминается Линия для вызова метода модели Части.

Пожалуйста, помогите мне. Спасибо!

Ответы [ 2 ]

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

Вы не говорите, откуда этот код вызывается, но из его формата я предполагаю, что он находится в действии lines_controller.php.

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

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

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

Не зная контекста кода, невозможно сказать. Так что предоставьте больше информации и кода.

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

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