2012-12-26 27 views
6

我使用Sonata EasyExtends包从Sonata项目扩展了用户包。 它被置于src/Application/Sonata/UserBundle默认情况下扩展的Sonata用户类中的注释未被读取

现在我想定制扩展类并添加一些字段。 我注意到,虽然该注释没有被处理,我需要定义在src /应用程序/奏鸣曲/ UserBundle /资源/配置/学说/ User.orm.xml映射

有什么办法可以使用注释而不是XML文件? 我认为这将解决很多的问题,我与引用的用户类,就像现在的命令

PHP应用程序/控制台学说:架构:更新--force

似乎没有认识到注解..

回答

10

删除应用程序/索纳塔/ UserBundle /资源/配置/在第一

学说后来改变实体/ user.php的和实体/ Group.php到注释类型:

<?php 

namespace Application\Sonata\UserBundle\Entity; 
use Doctrine\ORM\Mapping as ORM; 
use Sonata\UserBundle\Entity\BaseUser as BaseUser; 

/** 
* User 
* 
* @ORM\Table(name="fos_user_user") 
* @ORM\Entity 
*/ 

class User extends BaseUser 
{ 

    /** 
    * @ORM\Id 
    * @ORM\Column(type="integer") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    protected $id; 

    /** 
    * @ORM\Column(type="string", length=127) 
    */ 
    protected $test; 
} 
<?php 

namespace Application\Sonata\UserBundle\Entity; 

use Sonata\UserBundle\Entity\BaseGroup as BaseGroup; 
use Doctrine\ORM\Mapping as ORM; 

/** 
* Group 
* 
* @ORM\Table(name="fos_user_group") 
* @ORM\Entity 
*/ 
class Group extends BaseGroup 
{ 

    /** 
    * @ORM\Id 
    * @ORM\Column(type="integer") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    protected $id; 

} 

到底应键入:PHP应用程序/控制台学说:架构:更新--force,一切都应该工作得。

+0

确实,非常感谢! – user1926848

-1

在简历中,如果您使用XML,则注释不会规则。

如果你删除config/doctrine文件夹,它会查找注释,并在那里,你可以把你想要的。

相关问题