如何解决Symfony2:具有相关学说数据的处理形式
|| 我正在S2中构建简单的CMS,并且以Article形式处理关系Category也没有什么麻烦。 CategoryType和操作的代码:http://codepaste.net/ahyoig,都类似于Symfony网站上的教程/手册中的内容。 表单看起来不错,但是当我处理数据时(也像手册中一样),我得到了错误:“在选择字段中有“”类型数组的预期参数,给定字符串“ \”,我现在不知道如何解决。解决方法
我认为您的问题是因为您将选项“ 0”设置为“ 1”。这意味着表单类型将返回一个字符串值(因为您将
multiple
设置为false
是一个单一值),但是您的关系可能设置为多对多关系。
将“ 0”选项设置为“ 5”将向您的对象发送一个数组而不是字符串,这是应用程序所期望的。然后,如果您不喜欢HTML中CategoryType的列表框外观,则可以使用Symfony2中的表单主题以不同的方式呈现它。
希望这可以帮助,
马特
,您不需要CategoryType。 $ categories数组的创建也没有用。
最好的选择是使用本机实体表单类型:
<?php
use Doctrine\\ORM\\EntityRepository;
//...
$article = new Article();
$form = $this->get(\'form.factory\')
->createBuilder(\'form\',$article)
->add(\'category\',\'entity\',array
(
\'class\' => \'CMSBackBundle:Category\',\'query_builder\' => function(EntityRepository $er)
{
return $er->createQueryBuilder(\'c\')
->orderBy(\'c.title\',\'ASC\');
},\'expanded\' => false,\'multiple\' => false
)
// ...
->getForm();
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。