Самая удобная ORM

Печать RSS
810

А
Автор
Оранжевые штаны
0
Добрый день.
Начал реинженерить платформу, добрался до пакета ORM. Давайте подумаем вместе, какой интерфейс ORM был бы наиболее удобным в плане использования.
Сейчас работа примерно такая:
$dm = DataMapper::getInstance();
$o = new User();
$o->setLogin('Bashka');
$o->setPass('123');
$dm->insert($o); // Добавляем новый объект в базу
$o->setLogin('NewBashka');
$dm->update($o); // Обновляем данные об объекте
$id = $o->getOID();
$o = User::getProxy($id);
$dm->recover($o); // Получаем объект по его идентификатору

$o = $dm->recoverFinding($o, ['login' => 'NewBashka']); // Получаем объект по значению свойства
$dm->delete($o); // Удаляем объект из базы данных

Как бы вам хотелось производить эти операции?
J

Оранжевые штаны
0
<?php
$o = DataMapper::getInstance(new User);
$o->login = 'Bashka';
$o->passwd = md5(1234);
$o->save();


как по мне, то удобно

Добавлено через 01:04 сек.
вообще в kohanaframework удобно все сделано)
А
Автор
Оранжевые штаны
0
Мне не понравился kohana, изучал. В частности не понравилось следующее:
1. Для любого использования ORM нужно два действия: 1 - оборачивание объекта; 2 - само действие;
2. Я так и не понял зачем добавляется какая либо логика к самому объекту? Почему бы не оставить логику в слое ORM?
3. В чем то согласен что save, delete и insert закрепленные на объектах это удобно, но лично меня это путает
O

Пацак
0
Как в фреймворках типа
$model = New User;
$model->name_user = 'MyName';
$model->pass_user = '123';
$model->save();
//Или
$model->insert();
$model->get_array();
Изменил: orel (19.05.2013 / 19:27)
А
Автор
Оранжевые штаны
0
Уже двое настаивают на закреплении save, insert и delete на объектах. Подождем еще
J

Оранжевые штаны
0
не ну setLogin(), setPasswd() такие ф-ции писать нужно самому будет походу в модели. зачем делать в ручную, если автоматом можно сделать)
А
Автор
Оранжевые штаны
0
Сеттеры? В них разве есть логика?
O

Пацак
0
1. Башка, а ты выложил выложишь свое изобретение?
И

Пацак
0
8. Орёл, http://visavi.net/forum/topic.php?tid=33393& думаю под делфиниум и пишется
P.S согласен с постами 2 и 4
А
Автор
Оранжевые штаны
0
Да, просто немного изменений в этой платформе
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск