[英]Symfony2 single form to add multiple entries to database at once
我有一个实体
class User
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\Column(type="string", length=17)
*/
protected $mac;
/**
* @ORM\Column(type="string", length=10)
*/
protected $sensor;
/**
* @ORM\Column(type="integer", length=4)
*/
protected $sensitivity;
/** getters and setters **/
}
在数据库中,由于三个不同的传感器,每个用户应具有三个条目,我需要创建一个表单以使用这些传感器名称($ sensor)及其敏感度添加新用户。 可以用一个表格来完成吗? 表格的输入应为输入mac(文本),sensor1(数字),sensor2(数字),sensor2(数字)。 可以用一个表格来完成吗? 怎么样?
好的,所以我要做的是使用createFormBuilder()
不提供实体的情况下使用所有需要的输入创建表单。 然后我创建了一个新对象$user = new User();
接着:
$em = $this->getDoctrine()->getManager();
$user->setMac($form['mac']->getData());
$user->setSensor('wiliboxas1');
$user->setSensitivity($form['sensor1']->getData());
$em->persist($user);
$em->flush();
$em->clear();
$user->setSensor('sensor2');
$vartotojas->setSensitivity($form['sensor2']->getData());
$em->persist($user);
$em->flush();
$em->clear();
//and so on..
也需要$em->clear()
,因为否则它将仅添加一个条目。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.