我已经使用composer彻底安装了Symfony 2,并通过app/console
创建了一个包。我还创建了一个数据库,并通过app/console
生成了一些实体。
所以现在我执行app/console doctrine:schema:create
来创建数据库方案。不幸的是,我收到以下错误:
No Metadata Classes to process.
我仔细检查了命名空间,一切似乎都是正确的,特别是因为它是所有生成的代码。我还检查了/resources/config/doctrine/*bundlename*.orm.php
是否存在,确实存在。
我是否必须以某种方式重新配置Doctrine?我在这里失踪了什么?我已经多次删除缓存而没有任何运气。我在config.yml
中尝试了自定义映射,没有任何结果。
运行Xampp 1.8.0,PHP 5.4.4,Apache 2.4.2,Windows 7,Symfony 2.1 RC1
答案 0 :(得分:1)
看起来你已经正确配置了doctrine的驱动程序选项,或者实体文件夹中没有实体(或YAML / XML映射)
或者您忘记在实体类doc-blocks上添加@entity
用于学说配置信息: http://docs.doctrine-project.org/en/latest/reference/configuration.html
答案 1 :(得分:1)
在您的实体之上,您必须使用Doctrine:
namespace Osiris\BlogBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Blog
*
* @ORM\Entity
* @ORM\Table(name="blog")
*/
class Blog {
...
}
然后运行php app / console doctrine:schema:update --dump-sql