我从Laravel 4.1中收到以下错误。
ReflectionException Acme \ Services \ TaskCreatorService类不存在。
提前感谢您的帮助。
以下是定义该类的代码。它位于app\Acme\Services
。
<?php namespace Acme\Services;
use \Acme\Validators\TaskValidator;
use \Acme\Validators\ValidationException;
use \Acme\Validators\Validator;
class TaskCreatorService {
protected $validator;
public function __construct(TaskValidator $validator) {
$this->validator = $validator;
}
public function make(array $attributes) {
//determone whether data is valid
if ($this->validator->isValid($attributes)) {
Task::create([
'title' => $attributes['title'],
'body' => $attributes['body'],
'user_id' => $attributes['assign']
]);
return true;
}
throw new ValidationException('Task validation failed', $this->validator-getErrors());
//create the new task
//
//if not throw exception
}
}
我还在自动加载部分中将其添加到composer.json
。
"psr-0": {
"Acme": "app/"
}
答案 0 :(得分:1)
对我而言,就我而言,以下是有效的!
composer dump-autoload
我在以下link
中找到了一些解释希望它会有所帮助!
对于那些不了解Symfony或Ruby-on-Rails技术的人来说,Laravel真的很难让新手赶上来!
祝你好运!
答案 1 :(得分:0)
拥有PSR-0命名空间
"Acme": "app/"
您的班级文件必须是:
/var/www/appdir/app/Acme/Services/TaskCreatorService.php
你必须
composer dump-autoload
一旦创建了PSR-0命名空间。检查文件
/var/www/appdir/vendor/composer/autoload_psr0.php
并检查您的命名空间是否存在。