У меня проблема с настройкой Propel with Composer в моем проекте php.Propel and Composer в PHP: нет связи
это как выглядит мой каталог дерева:
project/
|--/public_html/index.php
|--/app/
| |--data/
| | |--propel.json
| | |--schema.xml
| |--vendor/
| |--composer.json
В/данные/папки Я бы хранить все мои файлы PROPEL, что сгенерированные классы /, генерируемой конф/и сгенерированных SQL /.
Для реализации этой цели, с терминалом в/данных/папке, я ставлю команды в следующей последовательности:
$ propel sql:build
$ propel model:build
$ propel config:convert
и все идут правильно.
Для того, чтобы более подходящую работу, в composer.json я добавил эту дополнительную функцию:
"autoload": {
"classmap": ["./data/generated-classes/"]
}
так, что почти в теории, поставив
require '../app/vendor/autoload.php';
внутри index.php должен быть достаточно. К сожалению, когда я пытаюсь использовать один классы PROPEL внутри этой страницы, возвращает ошибку
Тип: Propel \ время выполнения \ Exception \ RuntimeException
Сообщение: Нет соединение, определенное для базы данных "my_api". Вы забыли определить соединение или неправильно написано?
файл: 'C: \ pathToMyProject' \ Проект \ приложение \ поставщик \ передвижение \ передвижение \ SRC \ Propel \ время выполнение \ ServiceContainer \ StandardServiceContainer.php
Line: 279
Я думал, что propel не находит файл propel.json, который хранится в папке/data /.
В качестве дополнительного, если в index.php я просто добавить
require_once '../app/data/generated-conf/config.php';
все идет правильно.
Есть трюк для автозагрузки без использования этого последнего require_once? (очевидно, держите дерево как есть).
Спасибо за чтение.
Очень любопытно, как хорошо. – pbond