Codeigniter: несколько вызовов Active Record против объединения и разрушения моделей - PullRequest
1 голос
/ 25 июня 2010

Если у меня есть событие / функция, которая требует изменения большого количества различных переменных в моей Active Record, должен ли я напрямую обращаться к ним и изменять их все сразу из моей библиотеки, или библиотека выполняет несколько вызовов модели?

Данные, которые я хочу изменить, распределены по нескольким разным таблицам mysql, но некоторые находятся в одной таблице.

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

1 Ответ

0 голосов
/ 25 июня 2010

Для меня каждая модель в любом случае представляет одну таблицу. (Я думаю, что большинство людей делают это таким образом). Если необходимо изменить данные в нескольких таблицах, я должен сделать вызов для нескольких моделей.

Я думаю, что лучше использовать модели так, как они предназначены (а не вообще). Когда я впервые использовал codeigniter, я не использовал их, потому что считал, что активная запись (или, по крайней мере, ее реализация codeigniter) упрощает работу с базой данных. Когда я понял, как можно использовать модели, я никогда не оглядывался назад.

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

В конце концов, я думаю, что повторное использование и ремонтопригодность являются наиболее важными.

Возможно, вы также сможете использовать свои модели для построения запросов, а не для их выполнения, а затем выполнять их полностью (это то место, где вы думаете, что потеряете производительность?)

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