按ID创建Doctrine对象,而不使用数据库查找中的详细信息

时间:2013-12-13 00:31:23

标签: php symfony doctrine-orm dql

我的每个问题对象都映射到类别对象,但是我通过AJAX调用附加了对象,因此我在创建时只知道类别ID 问题,这意味着我已经进行了数据库读取以获取整个类别对象。

我是否可以将类别附加到问题,而无需访问数据库并实例化整个类别对象?我希望避免数据库查找...

工作代码我想简化:

$entityManager = $this->getDoctrine()->getManager();  
$category = $entityManager->getRepository('AcmeBundle:Category')->find($categoryId);

$question = new Question();
...
$question->setCategory($category);
$entityManager->persist($question);
$entityManager->flush();

1 个答案:

答案 0 :(得分:3)

获取参考。无需查询。

$category = $entityManager->getReference('AcmeBundle:Category',$categoryId);
相关问题