我搜索过,没有找到任何有这个问题的人.
我已经创建了我自己的数据变换器,如Cookbook中所述,这一切似乎都正确但我收到错误:
表单的视图数据应该是Niche\SecurityBundle\Entity\BusinessUser类的实例,但是是(n)整数.您可以通过将"data_class"选项设置为null或添加将(n)整数转换为Niche\SecurityBundle\Entity\BusinessUser实例的视图转换器来避免此错误.
变压器如下:
<?php
namespace Niche\SecurityBundle\Form\DataTransformer;
use JMS\SecurityExtraBundle\Security\Util\String;
use Symfony\Component\Form\DataTransformerInterface;
use Symfony\Component\Form\Exception\TransformationFailedException;
use Doctrine\Common\Persistence\ObjectManager;
use Niche\SecurityBundle\Entity\BusinessUser;
class BusinessUserToIdTransformer implements DataTransformerInterface
{
/**
* @var ObjectManager
*/
private $om;
/**
* @param ObjectManager $om
*/
public function __construct(ObjectManager $om)
{
$this->om = $om;
}
/**
* Transforms an object (BusinessUser) to a string (number)
*
* @param BusinessUser|null $businessUser
* @return String
*/
public function transform($businessUser)
{
if (null === $businessUser) {
return "";
}
return $businessUser->getId();
}
/**
* …Run Code Online (Sandbox Code Playgroud)