Class Symfony2可以';不包括自定义类
在第22行的C:\wamp\www\test\src\Ado\FrontendBundle\Helper\AdoFactory.php中找不到类“AdoDoctrineModel”Class Symfony2可以';不包括自定义类,class,symfony,doctrine,Class,Symfony,Doctrine,在第22行的C:\wamp\www\test\src\Ado\FrontendBundle\Helper\AdoFactory.php中找不到类“AdoDoctrineModel” <?php namespace Ado\FrontendBundle\Helper; use AdoDoctrineModel; use AdoApiModel; class AdoFactory { protected $adapter; public function __cons
<?php
namespace Ado\FrontendBundle\Helper;
use AdoDoctrineModel;
use AdoApiModel;
class AdoFactory {
protected $adapter;
public function __construct($container) {
$this->adapter = $container->getParameter('adapter');
}
public function getModel() {
switch($this->adapter)
{
case 'API':
case 'Doctrine':
$class = 'Ado' . $this->adapter. 'Model';
return new $class;
break;
default: throw new Exception("unsupported format: " . $type);
}
}
}
?>
我已尝试将AdoFactory中的使用路径更改为完整路径,并添加了“使用{…}作为AdoDoctrineModel”
已尝试\新建ADODictrinModel
任何帮助都会很好 我假设您使用的是Composer(Symfony 2.1.x)。您的代码对我来说很好,我会检查
composer.json
文件中的以下部分:
"autoload": {
"psr-0": {
"": "src/"
}
}
然后发布:
composer dump-autoload
当然,文件AdoDoctrineModel.php
应该放在src/Ado/FrontendBundle/Helper
文件夹中。不需要使用语句,因为两个类都在同一命名空间中。删除该代码:
use AdoDoctrineModel;
use AdoApiModel;
一切都会好起来的。您需要重新了解php名称空间是如何工作的,请查看名称空间上的文档
您当前告诉应用程序的是获取一个不存在的\AdoDoctrineModel类和\AdoApiModel,而不是\Ado\FrontendBundle\Helper\adoctrinemodel
和\Ado\FrontendBundle\Helper\AdoApiModel
类。您是否尝试过使用Ado\FrontendBundle\Helper\adoctrinemodel代码>?
use AdoDoctrineModel;
use AdoApiModel;