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

Вопрос о ORM
http://forum.kohanaframework.su/viewtopic.php?f=33&t=200
Страница 1 из 1

Автор:  websto [ 25 май 2012, 20:45 ]
Заголовок сообщения:  Вопрос о ORM

Использую ORM

$cat = ORM::factory('data')
->where('cat', '=', $id)
->order_by('date','DESC')
->limit($paginator->items_per_page)
->offset($paginator->offset)
->find_all();

видает ошибку ErrorException [ Fatal Error ]: Class 'Model_Data' not found

MODPATH\orm\classes\kohana\orm.php
public static function factory($model, $id = NULL)
{
// Set class name
$model = 'Model_'.ucfirst($model);

return new $model($id);

В гугле искал но так ничего внятного не увидел

Автор:  mamahtehok [ 25 май 2012, 23:31 ]
Заголовок сообщения:  Re: Вопрос о ORM

файл app/model/data.php создан?

Автор:  websto [ 25 май 2012, 23:45 ]
Заголовок сообщения:  Re: Вопрос о ORM

Нет я так понял data это название таблицы бд

Автор:  mamahtehok [ 26 май 2012, 09:57 ]
Заголовок сообщения:  Re: Вопрос о ORM

нет data это модель.

создайте файл app/classes/model/data.php

с содержанием

Код:
<?php defined('SYSPATH') or die('No direct access allowed.');
class Model_Data extends ORM
{
}


И возможно все заработет

Автор:  websto [ 26 май 2012, 10:18 ]
Заголовок сообщения:  Re: Вопрос о ORM

Спасибо за подсказку я уже догадался
так не работает
class Model_Data extends ORM
{
}
сделал вот так
class Model_Data extends ORM
{
protected $_table_name = 'data';
}
Сколько не читал документацию по кохане и по ORM нигде не встречал что нужно создавать класс под нее

Автор:  admin [ 26 май 2012, 14:41 ]
Заголовок сообщения:  Re: Вопрос о ORM

Пустой класс нужно создавать. И указывать название таблицы (как сделали вы), если оно отличается от стандартного.

Автор:  websto [ 27 май 2012, 10:30 ]
Заголовок сообщения:  Re: Вопрос о ORM

Сделал но в итоге все равно пришлось отказаться от ORM.Таскает все записи с таблицы а если записей больше 10 тис
на высоких нагрузках мне кажется будет тормозить.Тем более можна сделать все проще

Автор:  mamahtehok [ 27 май 2012, 11:37 ]
Заголовок сообщения:  Re: Вопрос о ORM

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

Автор:  websto [ 27 май 2012, 13:13 ]
Заголовок сообщения:  Re: Вопрос о ORM

А есть возможность с поля вытащить только определение ячейки.Например если поле имеет 15 ячеек а использую только 3 в данном варианте.Вроде такой возможности нет (хотя не уверен в дебри не вникал).Какие-то сложности с отдельными классами под таблицу это лишние файлы
мне кажется Query Builder или вообще прямые запросы тоже неплохо справляются зачем усложнять.Я так понимаю ORM сделали чтобы код был более читабельным и понятным ну так если для кого-то делать работу так да можна использовать

Автор:  admin [ 27 май 2012, 15:02 ]
Заголовок сообщения:  Re: Вопрос о ORM

Мне тоже кажется, что это "типа модно", ну и вроде как удобно, но везде говорят, что на высоконагруженных проектах орм лучше не использовать. Получается двоякая ситуация. Высоконагруженные -это обычно сложные проекты, а где тогда использовать ? На сайтах-визитках ?

P.S. ОРМ всегда тащит все поля таблицы.

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