【发布时间】:2018-01-26 00:22:33
【问题描述】:
我更新并总结了问题。
我要做的是在getForm()之后更改表单对象的默认值
public function newAction(Request $request)
{
$task = new Task();
$form = $this->createFormBuilder($task)
->add('task', TextType::class,array('data' => 'default text data') // Set the default data for loaded first time.
->add('save', SubmitType::class, array('label' => 'Save'))
->getForm();
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
//I want change the default value of task, I tried a few methods.
$d = $form->getData();
$form->get('task')->setData('replace text data'); // not work
$d->setData('second data'); // notwork
}
有没有可能?
【问题讨论】:
-
只需在
createFormBuilder行之前添加$task->setTask('Your Default Text');。 (或者在 Task 类本身中设置该值,在构造函数中或作为$task类变量的默认值) -
我想我可以设置默认任务,但我想在提交后更改它
-
@yceruto ,我猜我的问题有点不同,所以我更新了问题本身
-
你是指提交后表单中任务字段关联的数据?