Найдено результатов: 6

Стратегии поиска платформы

Я ищу информацию по обработке поиска в разных ORMs.

В настоящее время я перестраиваю какое-то старое приложение в PHP, и одно из требований: сделайте все или почти все доступным для поиска, поэтому пользователь просто набирает "punkrock live", и приложение находит видеоклипы, музыкальные треки, обзоры, предстоящие события или даже комментарии пользователей, помеченные таким образом.

В среде, где все доступно для поиска ORM необходимо поддерживать эту функцию двумя способами:

  • предоставление некоторой индексации API на "O" стороне ORM
  • предоставление средств для массового извлечения базы данных на стороне "R"

Идеальное решение будет возвращать готовые объекты на основе искомой строки. Знаете ли вы какие-либо хорошие решения end-to-end, которые выполняют эту работу, не обязательно в PHP? Если вы имели дело с подобной проблемой, было бы неплохо послушать, что ваш опыт. Нечто большее, чем использование Lucene или семантической паутины является способ oneliner'ы, Тхо ;-)*

search   orm   doctrine   propel    

395   2   23:41, 5th August, 2020


Испольование в одной таблице пары instance_id, instance_type в Doctrine

Здравствуйте,

столкулся с проблемой в doctrine.

Представьте есть три основных таблицы — participant, team, region.
Еще одна, пусть называется log, в которой храняться абсолютно одинаковые по структуре данные — rank, points, position и так далее для каждого объекта из первых таблиц.

Необходимо сделать так, чтобы по instance_id и instance_type можно было связать две таблицы — log и какую-то из основных, в зависимости от instance_type.

На первый взгляд все довольно просто, но после того как описал через обычный Doctrine_Query::create() и leftJoin, или через Doctrine_RawQuery::create() выдается ошибка, что не можен провести «гидрацию», т.к. у объекта Log нету связи на instance.

Если кто-то стыкался с такой трудностью, подскажите, пожалуйста, решение.

PHP   Doctrine   ORM   Базы   данных   Администрирование   баз   данных    

426   2   02:01, 25th August, 2020


Нагрузка от Doctrine

Умею спортивный интерес, как сильно грузит сервер использование Doctrine? Пробовал версию 1.2, очень смутило, что только подключение доктрины сразу увеличивает расход памяти на страницу на 3 МБ…

А в целом штука очень понравилась, поэтому хотелось бы использовать. Как дела обстоят с версией 2.0?

PHP   Doctrine   ORM    

441   5   20:45, 23rd August, 2020


PDO или ORM в PHP?

Раньше я разрабатывал все проекты на основе PDO DB. Сейчас прочитав много книг и статей, начал задумываться а правильный ли я подход использую? Везде идут советы по использованию Doctrine или Propel, как более удобное средство. Да, формат работы по приведённым примерам мне понравился. Но вот смогут ли эти библиотеки создавать сложные запросы с несколькими например JOIN'ами, и вообще как скажется использование этих библиотек на производительности?



Поэтому вопрос к общественности: «Чем Вы пользуетесь для доступа к БД, и почему Вы выбрали именно данный способ?».

PHP   Doctrine   ORM   Propel    

431   18   12:08, 6th August, 2020


Где найти статью про создание собственной ORM

Я помню на Хабре была статья про создание ORM. Статья была уникальной по емкости. Но читал я с телефона и в закладки не сохранил. По сути там было введение в объектную модель и структура таблиц (5-6 штук)
Может сможете вспомнить и найти? Или хотя бы помочь выбрать самую лучшую статью в этой тематике.
Заранее благодарю.

Doctrine   ORM   ORM    

293   2   03:33, 9th August, 2020


Создание объекта класса-потомка в Doctrine по известному полю type (column_aggregation)

Есть проект на Symfony (1.4) + Doctrine (1.2)
В проекте следующая архитектура классов: AbstractProduct, от него унаследованы AlphaProduct, BetaProduct и GammaProduct классы, используя column_aggregation и поле 'type' для различения классов.

В одном из контроллеров мне необходимо создать новый объект по заранее известному типу. Т.е. (к примеру) если тип 1 — надо создать AlphaProduct, 2 — BetaProduct и т.д. Т.е. создать дочерний объект нужного типа по известному типу.
На данный момент это выглядит так:

$classname = 'AbstractProduct';

foreach (Doctrine::getTable('AbstractProduct')->getOption('subclasses') as $subclass) {
  $inheritanceMap = Doctrine::getTable($subclass)->getOption('inheritanceMap');
  if ($inheritanceMap["type"] == $type) {
    $classname = $subclass;
    break;
  }
}

$this->product = new $classname();


Но идея сканить все подклассы в поиске нужного мне очень не нравится. В Doctrine 2 эта задача решается проще. Но можно ли как-то решить ее в Doctrine 1?

Symfony   Doctrine   ORM    

404   1   11:47, 1st October, 2020