2014-01-12 53 views
0

我正在使用Symfony 2.4和原則ORM。我有一個父實體,屬性,其中有許多子女的關係,包括:實體或其關係更新時的跟蹤

  • propertyVideos(一對多)
  • propertyPhotos(一對多)
  • propertyLocation(OneToOne)

在的LASTUPDATED場財產實體,我需要存儲財產實體或其任何相關實體的最新更新的日期和時間。

在Symfony/Doctrine中有這麼簡單的方法嗎?

回答

0

最簡單的選擇將是使用gedmo/doctrine-extensions或(對於Symfony的)stof/doctrine-extensions-bundle然後你可以使用執行下列操作...

Entity\Article: 
    type: entity 
    table: articles 
    fields: 
     created: 
      type: date 
      gedmo: 
       timestampable: 
        on: create // $this create 
     updated: 
      type: datetime 
      gedmo: 
       timestampable: 
        on: update // $this update 
     published: 
      type: datetime 
      gedmo: 
       timestmpable: 
        on: change 
        field: type.title 
        value: Published 
           // $this->type->title changed to "Published" 
     blah: 
      type: datetime 
      gedmo: 
       timestampable: 
        on: change 
        field: type.somethingelse 
           // $this->type.somethingelse is changed 
    manyToOne: 
     type: 
      targetEntity: Entity\Type 
      inversedBy: articles 
+0

感謝您的答覆,但對於跟蹤一對多關係的變化?那將如何處理? – user3009816

+0

@ user3009816我一直在尋找同樣的東西,但是我們必須使用doctrine監聽器或生命週期事件手動處理它,如[https://github.com/Atlantic18/DoctrineExtensions/issues/1435]中所述包的作者 – lolmx