我有一个带有datetyoe字段的表单
$builder->add('dataSpesa',DateType::class,array(
'data' => new \DateTime("now"),
'label'=>false,
'widget'=>'single_text',
'attr' => array('style' => 'width: 100%;margin-top:10px;',
'class' => 'js-datepicker'
)
))
现在我想在编辑表单中使用此表单并使用保存日期时间..我尝试这种方式,但它不起作用,我敢肯定是最好的方式
if($options['data']->getDataSpesa()){
$data_spesa=$options['data']['dataSpesa']->getData(); ->>> syntax error DON'T UNDERSTAND CORRECT WAY TO HAVE DATETIME VALUE
}else{
$data_spesa=new \DateTime("now");
}
->add('dataSpesa',DateType::class,array(
'label'=>false,
'data'=>$data_spesa, -> CORRECT WAY???
'widget'=>'single_text',
'attr' => array('style' => 'width: 100%;margin-top:10px;',
'class' => 'js-datepicker'
)
))
为了更好地理解..我在2控制器中使用此表单。在主页
/**
* @Route("/", name="homepage")
*/
public function indexAction(Request $request)
{
// crea nuovo
$voce_costo = new VoceCosto();
$form = $this->createForm(VoceCostoType::class, $voce_costo);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isvalid()) {
return $this->render('default/add/vocecosto.html.twig', array(
'form' => $form->CreateView()
));
}
在此我希望日期默认设置为当前日期
在另一个控制器(编辑控制器)
/**
* @Route("/edit/{id_vocecosto}", name="edit_voce")
*/
public function EditvoceCostoAction(Request $request,$id_vocecosto)
{
// crea nuovo
$voce_costo = $this->getDoctrine()
->getRepository('AppBundle:VoceCosto')
->find($id_vocecosto);
$form = $this->createForm(VoceCostoType::class, $voce_costo);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isvalid()) {
}
return $this->render('default/edit/voce_costo.html.twig', array(
'form' => $form->CreateView()
));
}
这里我希望该值是保存在数据库中的数据