2012-08-29 44 views
1

我已经采取了Symfony的“新”安装,并且我已将它与Sonata Admin Bundle集成。
阅读了关于S.A.B的内容后,我决定尝试在仪表板中添加一个“类别”。
据我知道我必须:SonataAdminBundle:添加新的实体问题

  • 创建我的实体和表到DB(教义将做到这一点对我来说)
  • 我的新实体
  • 注册该管理类为创建管理类一个服务,将其标记为sonata.admin的要求

我的问题是,这实质上:

我已经跟随索纳塔用户包子dle方法并找到一些类(它带有从FOSUserBundle获取的用户和组),并定义一个实体(空),该实体扩展了代码所在的模型。该模型必须包含属性(列表)和getter和setter。 于是我开始编写模型注释方法。这是我的代码:

<?php 

namespace Sonata\SestanteBundle\Model; 

use Doctrine\ORM\Mapping as ORM; 
/** 
* Sonata\SestanteBundle\Model\myFooEntity; 
* 
* @ORM\Table(name="myFooTable") 
* @ORM\Entity(repositoryClass="Sonata\SestanteBundle\Repository\myFooRepository") 
*/ 

class myFooEntity 
{ 
    /** 
    * @ORM\Column(type="integer") 
    * @ORM\Id 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    private $id; 

    /** 
    * @ORM\Column(type="string", length=25, unique=true) 
    */ 
    private $fooName; 

    /** 
    * @ORM\Column(name="is_active", type="boolean") 
    */ 
    private $isActive; 
} 

现在,当我运行:

php app/console doctrine:generate:entities vendor/bundles/Sonata/SestanteBundle/Model 

我收到错误:

[RuntimeException] Namespace "vendor\bundles\Sonata\SestanteBundle\Model" does not contain any mapped entities.

了后来在我的脑海:

  • 是设置好的其他地方的映射方法迫使我将这些属性表达成.xml文件groups和用户does? 进入config.yml我只是看到一些“标准”

任何想法超越这个错误?

编辑:我想这个问题是关于命名空间或类似的东西。如果我尝试生成具有不同名称(不存在)的实体,我收到相同的错误...

+0

你有你的config.yml是这样的:学说: ORM: entity_managers: 默认: 映射: SonataSestanteBundle:〜 – WizardZ

+0

是的,我有...... – DonCallisto

回答

0

虽然它可能是一种痛苦,但将实体中的所有@ORM\删除,并注释掉或删除use Doctrine\ORM\Mapping as ORM;已解决我之前的这个问题。我试图确定是什么导致命名空间放置在那里以及如何阻止它,但没有成功。