2012-10-11 29 views
5

tôi đã thêm dòng này để composer.json tôi:Làm thế nào để cấu hình các phần mở rộng học thuyết trong Zend Framework 2?

"gedmo/doctrine-extensions": "dev-master" 

Và đây là bên trong module.config.php mô-đun của tôi:

'doctrine' => array(
    'driver' => array(
     __NAMESPACE__ . '_driver' => array(
      'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver', 
      'cache' => 'array', 
      'paths' => array(__DIR__ . '/../src/' . __NAMESPACE__ . '/Entity'), 
     ), 
     'orm_default' => array(
      'drivers' => array(
       __NAMESPACE__ . '\Entity' => __NAMESPACE__ . '_driver' 
      ), 
     ), 
    ), 
), 

Sau đó, tôi muốn sử dụng annotaion timestampable vào đơn vị của tôi, ví dụ:

/** 
* @Gedmo\Timestampable(on="create") 
* @ORM\Column(type="datetime",nullable=true) 
*/ 
private $created; 

/** 
* @Gedmo\Timestampable(on="update") 
* @ORM\Column(type="datetime",nullable=true) 
*/ 
private $updated; 

Nhưng điều đó không hiệu quả. Khi tôi duy trì thực thể với các chú thích ở trên, các cột được tạo và cập nhật là NULL.

+0

Có thể là quá rõ ràng, nhưng bạn cũng adde 'Gedmo' namespace được nạp? Trong cả hai 'application.config.php' và usestatements bên trong lớp thực thể của bạn? – Sam

+0

Tôi đang gặp vấn đề tương tự khi cố tạo các lớp thực thể. Bạn có làm việc này không? – atodd

+0

@atodd Kiểm tra câu trả lời của tôi, tôi đã tìm ra điều này. –

Trả lời

12

Giải pháp là thay đổi module.config.php của tôi là như thế này:

'doctrine' => array(
    'driver' => array(
     __NAMESPACE__ . '_driver' => array(
      'class' => 'Doctrine\ORM\Mapping\Driver\AnnotationDriver', 
      'cache' => 'array', 
      'paths' => array(__DIR__ . '/../src/' . __NAMESPACE__ . '/Entity'), 
     ), 
     'orm_default' => array(
      'drivers' => array(
       __NAMESPACE__ . '\Entity' => __NAMESPACE__ . '_driver' 
      ), 
     ), 
    ), 
    'eventmanager' => array(
     'orm_default' => array(
      'subscribers' => array(
       'Gedmo\Timestampable\TimestampableListener', 
       'Gedmo\SoftDeleteable\SoftDeleteableListener', 
      ), 
     ), 
    ), 
), 
Các vấn đề liên quan