|    
						Какой рейтинг вас больше интересует?
						
						 |  
 Kohana 3: небольшая оптимизация ORM2012-11-08 08:49:00 (читать в оригинале)ORM в Kohana очень удобная штука, но она постоянно выполняет запросы типа: SHOW FULL COLUMNS FROM `users` Запрос выполняется почти на каждое действие связанное с таблицей, в данном случае 'users'. Это происходит из-за того, что для выполнения различных операций с данными ORM необходимо знать структуру таблицы и наименование полей. Что бы избавиться от таких запросов необходимо добавить модель описание структуры таблицы - массив $_table_columns. Думаю детально описывать стурктуру массива с данными не имеет смысла, так как в ниже приведённом примере всё хорошо понятно. Например для модели User, расширим стандартную модель Model_Auth_User добавив описание столбцов таблицы: 
<?php
defined('SYSPATH') OR die('No direct script access.');
class Model_User extends Model_Auth_User {
     protected $_table_columns     = array(
          'id' => array(
               'data_type'   => 'int',
               'is_nullable' => FALSE
          ),
          'email' => array(
               'data_type'   => 'string',
               'is_nullable' => FALSE
          ),
          'username' => array(
               'data_type'   => 'string',
               'is_nullable' => FALSE
          ),
          'password' => array(
               'data_type'   => 'string',
               'is_nullable' => FALSE
          ),
          'logins' => array(
               'data_type'   => 'int',
               'is_nullable' => TRUE
          ),
          'last_login' => array(
               'data_type'   => 'int',
               'is_nullable' => TRUE
          ));
}
Больше запросов SHOW FULL COLUMNS FROM `users` не будет, так как модель 'знает' поля таблицы и их свойства. 
 
 |    
						Категория «Священники»
						
					 Взлеты Топ 5 
 Падения Топ 5  
						Популярные за сутки | 
Загрузка...
 
			взяты из открытых общедоступных источников и являются собственностью их авторов.











 
						

