2014-04-04 7 views
0

DoctrineExtensions를 사용하고 있으며 문서를 따라 왔습니다. 나는 내 엔터티 필드는 Sluggable 주석 장식 한 :데이터베이스에 Entity를 지속 할 때 슬러그가 생성되지 않습니다.

use Gedmo\Mapping\Annotation as Gedmo; 
    . 
    . 
    . 
    /** 
    * @Gedmo\Slug(fields={"city"}, updatable=false) 
    * @ORM\Column(length=255) 
    */ 
    private $slug; 

내가 SQL 오류 얻을 새로운 개체 유지하려고 :

가 지속을 :

 $em = $this->getDoctrine()->getManager(); 
     $em->persist($location); 
     $em->flush(); 

오류 :

SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'slug' cannot be null 

config.yml :

# Stof Doctrine Extensions 
stof_doctrine_extensions: 
    orm: 
     default: 
      sluggable: true 

docs에 따르면 이것은 모두 내가 필요로하는 것이지만 슬러그는 생성되지 않습니다.

답변

1

이것은 내가 지나치게 단순하게 본 것입니다. orm.xml 파일에 매핑 된 필드가 없습니다 ... 일단이 매핑을 추가하면 작동했습니다 :

<field name="slug" type="string" column="slug" length="255" nullable="false"> 
    <gedmo:slug fields="city" updatable="false" /> 
</field>