脚本宝典收集整理的这篇文章主要介绍了php – 使用选择表单类型的数组到字符串转换错误,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个数据库,其中包含表“团队”和属性“工作日”.我生成了我的学说实体,现在我正在构建一个Symfony2表单.
我想将工作日的数组保存到团队表中的工作日属性中. weekdays属性是VArchAR(255),因此它应该能够包含字符串数组.我使用选择类型,但在提交表单时我得到一个数组到字符串转换错误.
我在做什么:
我使用了Symfony2选择formtyPE(带有多个选项),因为团队可以在工作日选择几个工作日.我首先检索了我的团队对象数据.然后我做这样的表格:
$builder = $this->createFormBuilder($team); $form = $builder->add('weekday','choice',array( 'choices' => array( 'mon' => 'Monday','tue' => 'Tuesday','wed' => 'Wednesday','thu' => 'Thursday','fri' => 'Friday','sat' => 'Saturday','sun' => 'Sunday',),'multiple' => true,'expanded' => true,'label' => 'Day of the week','label_attr' => array('class' => 'control-label'),'attr' => array('placeholder' => 'Day of the week','size' => '7') ))->getForm();
提交表单时,我使用实体管理器将更改保存到数据库:
if ($request->isMethod('POST')) { $form->bind($request); if ($form->isValid()) { // Save changes to db $em = $this->getDoctrine()->getManager(); $em->persist($team); $em->flush(); // redirect to new canonical url return $this->redirect($this->generateUrl('team_edIT',array('nameCanonical' => $team->getNameCanonical(),'code' => $team->getCode()))); }
错误:
这对我来说似乎是100%有效的代码.我在symfony2中制作了其他形式.但是当我在表单中选择一个或多个工作日,然后提交时,我收到此错误:
我想不出办法解决这个问题.帮助赞赏!
我的完整代码是可见的on this gist.
class Team { /** * @ORM\Column(type="array") */ PRotected $weekdays; /* Some more code */ }
所有可能类型的列表都可以在官方documentation中找到.
以上是脚本宝典为你收集整理的php – 使用选择表单类型的数组到字符串转换错误全部内容,希望文章能够帮你解决php – 使用选择表单类型的数组到字符串转换错误所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。