Подход к проверке модели - MVC (CodeIgniter) - PullRequest
0 голосов
/ 13 февраля 2012

У меня есть модель, которая имеет одну основную таблицу с 22 полями и 5 таблицами соединения - некоторые входные данные, возможно, потребуется проверить в БД и преобразовать из значения в id перед вставкой.

В настоящее время яиметь 950 строк кода, который выполняет валидацию / проверку базы данных / преобразование всего за один раз.Проблема, которую я вижу, состоит в том, что код не очень гибкий и сложный для тестирования.Я также должен был бы скопировать-вставить / переписать его для каждого другого действия вставки / обновления, в зависимости от того, использует ли оно аналогичные поля или нет.

Есть ли подход, который сработал для вас, который вы могли бы предложить мне?Разделить каждое поле на свою функцию?(Тогда я должен был бы также отделить каждое поле, и проверкой и преобразованием?)

1 Ответ

0 голосов
/ 26 февраля 2012

Я предлагаю вам разбить это на несколько методов ... каждый метод должен делать одно, а одно только. Это облегчает тестирование и делает его более гибким. Если ваши методы содержат более 10-20 строк, они могут делать слишком много.

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

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

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