【发布时间】:2016-08-25 10:10:11
【问题描述】:
我遵循了这个教程:http://symfony.com/doc/current/cookbook/doctrine/file_uploads.html#using-lifecycle-callbacks
但是 prePersist 没有被触发(但是实体被持久化到数据库中)。
$media = new Media();
$form = $this->createFormBuilder($media)
->add('file')
->getForm();
if ($request->isMethod("POST")) {
$form->bindRequest($request);
if ($form->isValid()) {
$em = $this->getDoctrine()->getManager();
$em->persist($media);
$em->flush();
}
}
实体: http://dpaste.com/869771/(我刚刚复制并粘贴到课堂上的一些代码)
我加了
die("test");
上传函数,但它没有被调用。那么怎么了?有任何想法吗?我正在使用 sf 2.1。
【问题讨论】:
-
那么再解释一下数据库映射发生在哪里?如果映射是在 xml 文件中完成的,那么注释对您没有任何好处。不能混搭。需要将生命周期映射添加到您的 xml 文件中。
-
您的 dpaste 代码已过期,切断了您的问题的用处。请不要使用外部链接,并在问题中包含代码:)
标签: symfony orm annotations doctrine symfony-2.1