Я выбираю XML-файл для конфигурации, но при запуске я получаю следующую ошибку ./vendor/bin/propel sql:build [Symfony\Component\Config\Definition\Exception\InvalidTypeException] Invalid type for path "propel.database.connections.cfs.attributes". Expected array, but got string Вот мой файл propel.xml <?xml version="1.0" encoding="ISO-8859-1" standalone="no"?> <config> <propel> <database> <connections> <connection id="cfs"> <adapter>mysql</adapter> <classname>Propel\Runtime\Connection\ConnectionWrapper</classname> <dsn>mysql:host=localhost;dbname=cfs_development</dsn> <user>cfs_user</user> <password>cfs_pass</password> <attributes></attributes> </connection> </connections> </database> <runtime> <defaultConnection>cfs</defaultConnection> <connection>cfs</connection> </runtime> <generator> <defaultConnection>cfs</defaultConnection> <connection>cfs</connection> […]
->joinOrigin('origin') ->joinLocation('location', \Criteria::LEFT_JOIN) ->where("LOWER(IF(location.code IS NOT NULL,location.code, origin.code)) NOT IN ?", $not_in_old_job_search_array) Является частью запроса Propel, который я переношу из raw SQL. location и origin – это два внешних ключа (объявленных как таковые в schema.xml), которые указывают на одну и ту же таблицу. Propel добавляет соединения правильно: INNER JOIN `idb_countries` `origin` ON (idb_ads.idb_countries_ididb_origin=origin.ididb_countries) LEFT JOIN […]
Глядя на исходный код Propel (библиотека PHP ORM), я нашел этот метод внутри файла propel / propel1 / runtime / lib / query / Criteria.php: /** * Set offset. * * @param int $offset An int with the value for offset. (Note this values is * cast to a 32bit integer and may result in […]
Я попробовал решение в этом ответе , но это не сработало. Это привело к следующему SQL: SELECT user.id AS `Id`, user.name AS `Name`, AS `ReferralUser.Id`, AS `ReferralUser.Name` FROM `ReferralUser` INNER JOIN `account` ON (ReferralUser.id=account.id) Обратите внимание, что ReferralUser не является таблицей в моей базе данных, она должна быть псевдонимом. Мне нужно присоединиться к таблице как […]
Я пытаюсь установить propel_generator версии 1.2 (более поздние версии несовместимы с проектом, над которым я работаю). я пробовал pear install propel/propel_generator-1.2 Но я получаю следующую ошибку: Failed to download propel/propel_generator, version "1.2", latest release is version 1.5.2, stability "stable", use "channel://pear.propelorm.org/propel_generator-1.5.2" to install install failed Кто-нибудь знает, как я могу установить это с помощью Pear?
Я интегрировал приложение propel, я просто хотел использовать две базы данных. Но я не знаю, как определить в schema и build.properties files.can любой, кто-нибудь, дайте мне знать, что я должен сделать, чтобы иметь несколько баз данных
Работая над проектом с Zend Framework, я использую Propel ORM со многими связанными объектами базы данных. Я новичок в обоих, но у меня есть объектные модели, созданные и работающие. Я просто пытаюсь получить доступ к объекту сейчас. У меня есть метод для создания нового пользователя, его работоспособности и обновлений связанных строк (не все связанные, но […]
Я хочу проверить, допустимо ли имя таблицы в Propel, а затем сделать что-то с ним, например получить его имя PHP. Проблема в том, что я использую DatabaseMap, и он содержит только таблицы, которые были созданы. Например: $map = Propel::getDatabaseMap(); $map->getTableName('group'); // throws exception Если я перебираю таблицы: $tables = $map->getTables(); foreach ($tables as $key => […]
Я пишу отчет с Propel и вам нужно несколько раз присоединиться к одной и той же таблице , чтобы получить другую статистику для разных диапазонов дат, используя одни и те же данные. Проблема заключается в том, что propel игнорирует несколько ->leftJoin() для запроса. Я думаю, мне нужно, чтобы каждый из них присоединялся, чтобы их можно […]
По возможности, мне нужна помощь со стороны сообщества. У нас есть проект на работе, и настало время для рефакторинга. Мы используем PHP 5 и Propel 1.6 в качестве слоя ORM. Идея на самом деле довольно проста: мы пытаемся одновременно получить всю соответствующую информацию. Однако эта информация не всегда напрямую связана с основным классом (или, другими […]