这是我的应用程序结构,
my-first-app
|
|-app
|
| -Commands
| -Console
| -Events
| -Http
| -models(custom define folder)
|
|-Base(folder)
| |
| | -StuDetails.php
| | -StuDetailsQuery.php
|
|-Map(foder)
|-StuDetails.php
|-StuDetailsQuery.php
实际上我正在使用propel ORM从数据库中检索数据 . 我在文件夹 models 中创建了我的模型类 . 然后我尝试在我的 pageController 类中访问 StudetailsQuery 类,该类位于作为Controller扩展的http文件夹中 .
这里是 :
<?php
namespace App\models\propel;
namespace App\Http\Controllers;
use App\Http\Requests;
use App\Http\Controllers\Controller;
use Base\StuDetailsQuery;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\View;
class pagesController extends Controller
{
public function index()
{
$stu= StuDetailsQuery::create()->find();
return view('pages.index', compact('stu'));
}
但我得到错误:
PHP致命错误:/var/www/my-first-app/app/Http/Controllers/pagesController.php中找不到类'Base \ StuDetailsQuery'
我试过了;
-
composer dump-autoload
-
将以下行添加到composer.json文件中
“autoload”:{“psr-4”:{“propel \”:“app / models / propel /”}}
但对我来说没什么好看的......有什么建议吗?
2 回答
这解决了我的问题...... :)
我一直得到类似的遗漏类错误 . 虽然我完全按照You Must Use Composer laracast中的laracast自动加载示例(包括composer.json的修改),但我遇到了一个缺少类错误的问题 .
在观看视频时,我注意到jeffery方式在对象名称之前偶尔使用\ .....我不知道为什么但是在挫折中我添加了它,它对我有用 .
总之,我发现我必须在对象之前使用“\”,如下所示:
新的\酒吧;
我希望这会有所帮助,如果有人能帮我理解发生的事情,请告诉我们 .