Articles of propel

Рекурсивно гидратируйте все связанные объекты в Propel

Есть ли простой способ рекурсивно гидратировать все связанные объекты при выполнении запроса? Скажем, у меня есть следующие таблицы: Song Composer Century Когда я делаю SongPeer::doSelectJoinAll() только связанные композиторы гидратируются, поэтому, если я тогда сделаю что-то вроде $song->getComposer()->getCentury() , будет выполнен новый запрос. Я хочу выполнить только один запрос в БД, поэтому, когда я вызываю $song->getComposer()->getCentury() […]

Реляционный API: where () не может определить столбец, используя классы с именами

Я пытаюсь сделать что-то подобное $ u = \ Entity \ UserQuery :: create () -> где ('User.Username =?', "john") -> findOne (); но я получаю эту ошибку Невозможно определить столбец для привязки к параметру в разделе «User.Username =?» Хотя тот же код в контексте, отличном от имен, работает нормально. Я знал, что есть лучшие […]

Не допускайте, чтобы Propel вставлял пустые строки

Как я могу запретить Propel ORM вставлять пустые строки, когда столбец не установлен? CREATE TABLE user ( uid INTEGER PRIMARY KEY AUTO_INCREMENT, email VARCHAR(255) NOT NULL UNIQUE, — No default value … ) Engine InnoDB … ; Propel позволяет $user = new User(); $user->save(); $user = new User(); $user->save(); , Я попытался установить SQL_MODE но […]

Первичный ключ + Компонентный первичный ключ, вызывающий проблему в схеме базы данных propel

У меня есть таблица, которая использует первичный ключ с автоматическим добавлением и имеет несколько полей. <column name="id" type="INTEGER" primaryKey="true" required="true" autoIncrement="true" /> <column name="field1" type="INTEGER" required="true" /> <column name="field2" type="INTEGER" required="true" /> <column name="field3" type="INTEGER" /> <column name="field4" type="INTEGER" /> <column name="field5" type="INTEGER" /> Я хочу убедиться, что field1 + field2 не используется более одного […]

Является ли Propel'sArray / fromJSON безопасным с SQL-инъекции?

В документации Propel ORM упоминается аккуратная функция импорта / экспорта с использованием таких функций, как fromArray и fromJSON, что должно позволить что-то вроде этого: $foo = new Widget(); $foo->fromArray($_POST); $foo->save(); /* Aaand you're done! */ … но документация не упоминает, что использование этого метода должно быть безопасным, т. е. если fromArray может обрабатывать ненадежный вход. […]

Безопасное соединение Propel, удаленный MySQL

Можно ли настроить Propel для использования SSL-соединения с удаленным сервером MySQL? Я нашел тот же вопрос с Doctrine, но на него также не ответил: Как подключиться к MySQL с помощью SSL на symfony / doctrine

Проблема с сохранением одиночной таблицы Propel

У меня есть таблица под названием «talk», которая определяется как абстрактный в моем файле schema.xml. Он генерирует 4 объекта (1 для каждого класса): Комментарий, Рейтинг, Обзор, Проверка Он также генерирует TalkPeer, но я не мог получить его для создания других 4-х сверстников (CommentPeer, RatingPeer, ReviewPeer, CheckinPeer), поэтому я создал их вручную и наследовал их от […]

Добавление настраиваемых столбцов в модель Propel?

На данный момент я использую следующий запрос: $claims = ClaimQuery::create('c') ->leftJoinUser() ->withColumn('CONCAT(User.Firstname, " ", User.Lastname)', 'name') ->withColumn('User.Email', 'email') ->filterByArray($conditions) ->paginate($page = $page, $maxPerPage = $top); Однако я хочу добавить столбцы вручную, поэтому я думал, что это будет просто работать: foreach($claims as &$claim){ $claim->actions = array('edit' => array( 'url' => $this->get('router')->generate('hera_claims_edit'), 'text' => 'Edit' ) ); […]

Propel ORM – Соединение несвязанных таблиц

Как этот оператор SQL преобразуется в Propel (1.6.3)? SELECT * FROM table_a JOIN table_b Поскольку tableA и tableB не используют внешние ключи и не имеют определенных отношений. TableAQuery::create()->join('tableB') не работает, поскольку Propel жалуется на ошибку: «Неустранимая ошибка: исключить исключение« PropelException »с сообщением« Неизвестное отношение TableB в таблице TableA » Большое спасибо за любую помощь и […]

Как Zend Framework с помощью Propel ORM

Я хотел бы интегрировать Propel с Propel Zend framework . Я видел интеграцию доктрины в прошлом, но этот пост говорит, что кажется, что продвижение сделано немного по-другому. У Propel уже есть две вещи: во-первых, Propel включает в себя собственный автозагрузчик, что означает, что мне не пришлось пытаться заставить Propel в Zend Framework файловой системы Zend […]