使用查找表保留对象

时间:2014-08-07 10:29:48

标签: php symfony doctrine

有没有办法执行以下操作,而不必先查询数据库以获取我的查找表对象?

$media = new Media();
$doctrine = $this->get('doctrine');

$mediaType = $doctrine->getRepository('AcmeCoreBundle:MediaType')->findBy(array(
    'name' => 'image'
))[0];

$media  ->setName($name)
        ->setValue($value)
        ->setMediaType($mediaType);

$em = $doctrine->getManager();
$em->persist($media);
$em->flush();

1 个答案:

答案 0 :(得分:0)

如果您通过其主键而不是某些任意属性引用MediaType对象,则可以使用EntityManager::getReference($entityClass, $pk),但在这种情况下,我认为您必须首先获取此实体。