php – Symfony表单Select2允许用户输入新值
发布时间:2020-12-13 22:25:00 所属栏目:PHP教程 来源:网络整理
导读:我有一个Symfony表单,其中我有一个省的字段,将其转换为Select2.我想允许用户也允许新值. -add('province','entity',array( 'class' = 'PNCGeneralBundleEntityState','property' = 'name','empty_value'='-- Select Province --','label' = ucfirst('Stat
我有一个Symfony表单,其中我有一个省的字段,将其转换为Select2.我想允许用户也允许新值.
->add('province','entity',array( 'class' => 'PNCGeneralBundleEntityState','property' => 'name','empty_value'=>'-- Select Province --','label' => ucfirst('State / Province / Region'),'required' => false,'attr' => array('class' => 'form-control'),'label_attr' => array('class' => 'control-label'),'mapped' => false,)) 枝条 $('#user_profile_type_province').select2({ tags: "true",}); 调节器 if ($request->getMethod() == 'POST') { $UserProfileForm->handleRequest($request); $province = $UserProfileForm["province"]->getData(); $tag = $em->getRepository('PNCGeneralBundle:State')->findOneByName($province); if(!$tag){ $newState = new State(); $newState->setName($province); $newState->setCountry($UserProfileForm["country"]->getData()); $em->persist($newState); $em->flush(); } } 但是当我在省select2中输入新内容时,我的省值为null. 解决方法
它按预期工作:)你没有实体所以有null.为了使它工作,你将不得不创建一个DataTransformer(
http://symfony.com/doc/current/cookbook/form/data_transformers.html),如果它不存在你将获取状态,你创建一个新的实体对象.确保级联正确,以便新状态将与用户配置文件一起保留.
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |