我的Symfony项目中有一个名单实体,其中包含两个日期时间字段。 p>
FormType上的输入字段使用两个single_text框,一个用于时间日期。 p>
$ builder-> add('serviceUserId ',EntityType :: class,array('class'=>'AppBundle:ServiceUser',
'data'=> $ options ['serviceUser']))
- > add('rosterStartTime',DateTimeType :: class,
array('date_widget'=>“single_text”,
'time_widget'=>“single_text”,
))
- > add('rosterEndTime',DateTimeType :: class, array('date_widget'=>“single_text”,
'time_widget'=>“single_text”,
)
code> pre>
任何人都可以告诉我如何 格式化我在单元测试中传递给该字段的日期。 p>
我最接近的是 p>
$ client = static :: createClient(array(),array(
'PHP_AUTH_USER'=>'username',
'PHP_AUTH_PW'=>'password',
));
$ date = new \ DateTime ('2015-04-01 08:00');
//浏览到 一个exsting服务用户并为该记录添加一个名单
$ crawler = $ client-> request('GET','/ serviceuser / 2');
$ crawler = $ client-> click($ crawler- > selectLink('添加新名册') - > link());
//填写表单并提交
$ form = $ crawler-> selectButton('Create') - > form(array(
'appbundle_roster [serviceUserId]'=> 2,
'appbundle_roster [rosterStartTime]'=> $ date->格式('yyyy-MM-dd'),
'appbundle_roster [rosterStatus]'=> 1,
'appbundle_roster [numberResourcesNeeded]'=> 2,
'appbundle_roster [customerId]'=> 2,
));
code> pre>
此错误失败 p>
AppBundle \ Tests \ Controller \ RosterControllerTest :: testCompleteScenario
InvalidArgumentException:无法在复合字段“appbundle_roster [rosterStartTime]”上设置值。
code> pre>
div>