我正在使用推进ORM 制作一个php应用程序。当我尝试运行它时,它给出了以下消息:
致命错误:未捕获错误:在C:\ MAMP \ htdocs \ Conference \ vendor \ bin \ generated-conf \ config.php中找不到类'Propel \ Runtime \ Propel':2堆栈跟踪:#0 C:\ MAMP \ htdocs \ Conference \ vendor \ bin \ list.php(6):在第2行的C:\ MAMP \ htdocs \ Conference \ vendor \ bin \ generated-conf \ config.php中抛出require_once()#1 {main} 。
在我的config.php
生成的文件中,我写了这个:
'classname' => '\\Propel\\Runtime\\Connection\\ConnectionWrapper'
这一切意味着什么?我错过了一些文件或什么?
答案 0 :(得分:0)
我认为你错过了建筑的一步。 我假设您已完成schema.xml文件,并且还正确配置了propel.yaml(或允许的扩展文件)。另外我假设你有Propel with Composer。 如果您已完成以下所有步骤:
1)打开终端并转到项目目录,其中schema.xml和propel.yaml文件是。
2)执行以下命令获取生成的sql(我必须在Windows上这样做):
c:\MAMP\htdocs\Conference\vendor\bin\propel sql:build
3)使用以下命令获取模型类:
c:\MAMP\htdocs\Conference\vendor\bin\propel model:build
4)生成类后,您必须自动加载它们。使用文本编辑器打开composer.json文件并添加以下内容:
"autoload": {
"classmap": ["generated-classes/"]
}
它应该是这样的,例如:
{
"require": {
"twig/twig": "~1.0",
"propel/propel": "~2.0@dev"
},
"autoload": {
"classmap": ["generated-classes/"]
}
}
5)要完成类自动加载,您需要在控制台上执行:
composer dump-autoload
6)对于运行时连接设置,在运行时为通信类运行:
c:\MAMP\htdocs\Conference\vendor\bin\propel config:convert
7)假设您已经创建了数据库,您需要做的最后一件事是创建表,这是使用以下命令:
c:\MAMP\htdocs\Conference\vendor\bin\propel sql:insert
你去吧!每次我建立一个项目时,这对我都有用。