Является ли хорошей практикой использование запросов к базе данных во вспомогательных функциях в codeigniter?

Я использовал запросы к базе данных во вспомогательных функциях в среде CodeIgniter.

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

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

В School_model :

class School_model extends CI_Model
{
// some code ...

function generateID()
{
// code to generate unique id by checking the database
}

// some code ...
}

И в Student_model :

class Student_model extends CI_Model
{
// some code ...

function generateID()
{
// same code to generate unique id except the table name
}

// some code ...
}

Или же мы можем передать table_name в качестве аргумента вспомогательной функции как:

function generate_ID( $table_name )
{
// code to genetrate unique id by checking in $table_name
}

Позднее преобладает дублирование кода (DRY). Но является ли хорошей практикой использование запросов к базе данных в функциях вне моделей.

0

Решение

Я думаю, что расширение ядра Codeigniter является лучшим подходом для этого.

class MY_Model extends CI_Model {

Вы можете написать function generate_ID( $table_name ){ модель внутри ядра

Наконец, расширить вашу модель с MY_Model

class Student_model extends MY_Model
2

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector