Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Разумно ли
http://forum.kohanaframework.su/viewtopic.php?f=33&t=432
Страница 1 из 1

Автор:  Исмаил [ 06 ноя 2012, 15:42 ]
Заголовок сообщения:  Разумно ли

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

Автор:  snake.nf [ 08 ноя 2012, 16:01 ]
Заголовок сообщения:  Re: Разумно ли

Если возвращаются одни и те же данные, то нет.
Если в приведённом примере вы будете делать полную выборку из базы (slect * from some_table), а потом вручную фильтровать данных, то можно сделать одним методом.

Автор:  admin [ 14 ноя 2012, 18:20 ]
Заголовок сообщения:  Re: Разумно ли

Для простых стандартных запросов я использую одни и те же заготовки. Если нужны сложные условия, тогда пишу уже индивидуально.
У меня еще с чисто пхп заготовки были наподобие:
Код:
    // Создание
    function insert($table, array $columns)
    {
        if (count($columns) > 0)
        {
            $sql = 'INSERT INTO `'. $table .'` SET';
           
            foreach ($columns as $field => $value)
            {
                $sql .= "\n`$field` = '$value',";
            }
   
            $sql = substr($sql, 0, -1);
            mysqlQuery($sql);

            return mysql_insert_id();           
        }
    }
   
    // Обновление
    function update($table, array $columns, $where)
    {
        if (count($columns) > 0)
        {
            $sql = 'UPDATE `'. $table .'` SET';
           
            foreach ($columns as $field => $value)
            {
                $sql .= "\n$field = '$value',";
            }
   
            $sql = substr($sql, 0, -1);
           
            $sql .= $where;
           
            mysqlQuery($sql);           
        }
    }

Автор:  Kurk_SS [ 30 ноя 2012, 16:40 ]
Заголовок сообщения:  Re: Разумно ли

admin писал(а):
Для простых стандартных запросов я использую одни и те же заготовки. Если нужны сложные условия, тогда пишу уже индивидуально.
У меня еще с чисто пхп заготовки были наподобие:
Код:
    // Создание
    function insert($table, array $columns)
    {
        if (count($columns) > 0)
        {
            $sql = 'INSERT INTO `'. $table .'` SET';
           
            foreach ($columns as $field => $value)
            {
                $sql .= "\n`$field` = '$value',";
            }
   
            $sql = substr($sql, 0, -1);
            mysqlQuery($sql);

            return mysql_insert_id();           
        }
    }
   
    // Обновление
    function update($table, array $columns, $where)
    {
        if (count($columns) > 0)
        {
            $sql = 'UPDATE `'. $table .'` SET';
           
            foreach ($columns as $field => $value)
            {
                $sql .= "\n$field = '$value',";
            }
   
            $sql = substr($sql, 0, -1);
           
            $sql .= $where;
           
            mysqlQuery($sql);           
        }
    }


Админ, уважуха... я тоже пошол по идее не дублировать методы выборки/изменения данных.
Хочь совет!?

class Model ..{
public $table='pages';

.................
public function getById($id=0) {
$sql='select * from '.$this->table.';"';
}
.....
}

Страница 1 из 1 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/