使用Symfony2更新无表格的数据

时间:2014-06-01 21:40:30

标签: symfony

我已尝试在Symfony2中搜索更新数据,但看起来所有教程都需要很少的正常步骤来执行此操作:

  1. 经理初始化$em = $this->getDoctrine()->getManager();
  2. 使用条件$entity = $em->getRepository('bundle')->find($id);
  3. 创建实体
  4. 创建表单$form = $this->createForm(new Type(), $entity);
  5. 与请求绑定$editForm->handleRequest($request);
  6. 刷新数据$em->flush();
  7. 假设我在twig中有自定义表单,并在控制器$variable = $request->request->get('name');中执行手动getRequest。有没有办法在实体$entity = $em->getRepository('bundle')->find($id);中为特定ID更新此数据而不创建用于刷新我的数据的表单?

    因为我需要使用迭代为我的数据库中的许多ID更新此变量。假设我需要使用此值更新数千个数据。我担心创建表单会影响性能和时间。

1 个答案:

答案 0 :(得分:5)

只需使用setter直接在您的实体中设置数据,然后刷新:

$em = $this->getDoctrine()->getManager();
$entity = $em->getRepository('Bundle:Entity')->find($id);

$entity->setSomeProperty($propertyValue);

$em->flush();