0
我剛開始使用symfony和doctrine。我有一個簡單的實體,它有一個屬性不與數據庫綁定。這個屬性應該包含xml文件的內容(我想要製作xml文件,當doctrine向數據庫添加行時)。教義屬性映射
/**
* Layouts
*
* @ORM\Table(name="layouts")
* @ORM\Entity
* @ORM\HasLifecycleCallbacks()
*/
class Layouts
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="SEQUENCE")
* @ORM\SequenceGenerator(sequenceName="layouts_id_seq", allocationSize=1, initialValue=1)
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="name", type="string", length=255, nullable=false)
*/
private $name;
/**
* ???????
*/
private $template_body;
...
}
如何描述$template_body
屬性?在不離開屬性描述的情況下,我遇到了一個問題 - 當我在表單中編輯此屬性時,該原則不會導致preUpdate方法。
如果我在我的管理形式@PreUpdate方法僅編輯$ template_body值不叫。 但如果我編輯別的東西 - PreUpdate方法工作正常。我認爲映射問題。 – 2013-03-04 10:38:11
$ template_body不是ORM列集的一部分,因此僅在受管實體上編輯此值不會觸發PreUpdate事件。我認爲你需要問的問題是,一旦創建了它,你實際上將如何處理$ template_body,它是否會與該實體的其他屬性保持一致?如果是這樣,它不應該也是一個專欄? – 2013-03-04 11:48:01
「$ template_body不是ORM列集合的一部分,因此只需在託管實體上編輯此值就不會觸發PreUpdate事件。我認爲您需要問的問題是」 - 謝謝,您是對的! 我想從$ template_body屬性創建我的磁盤上的文件,我做到了觸發PreUpdate事件。但是,如果我編輯管理實體只是這個值不會觸發PreUpdate事件。這是我的問題。英文我的第二個問題,我很抱歉(( – 2013-03-04 13:46:51