Php OroCrm使用FOSRestBundle$this->;getManager()->;createEntity()

Php OroCrm使用FOSRestBundle$this->;getManager()->;createEntity(),php,symfony,fosrestbundle,orocrm,Php,Symfony,Fosrestbundle,Orocrm,我想创建一个post API,当RestController执行以下操作时,我遇到了一个问题: $entity=$this->getManager()->createEntity() 它的返回值为Null,因此在验证$form错误的过程中,我遇到了一个错误500。 而我直接在公共函数handleCreateRequest()中创建了一个新实体 它工作得很好,我的实体被创建并放入我的数据库中。 那么为什么createEntity()在知道此方法在apientyManager.php et retu

我想创建一个post API,当RestController执行以下操作时,我遇到了一个问题:

$entity=$this->getManager()->createEntity()

它的返回值为Null,因此在验证$form错误的过程中,我遇到了一个错误500。 而我直接在公共函数handleCreateRequest()中创建了一个新实体 它工作得很好,我的实体被创建并放入我的数据库中。 那么为什么createEntity()在知道此方法在apientyManager.php et returnnew$this->class中时返回null呢

这是我的控制器Post方法:

 /**
* REST POST Product
*
* @ApiDoc(
*      section="Product",
*      description="Post product item",
*      resource=true
* )
* @return \Symfony\Component\HttpFoundation\Response
*/
public function postAction()
{

  return $this->handleCreateRequest();
}
这是handleCreateRequest()

/**
*创造新的
*
*@返回响应
*/
公共函数handleCreateRequest()
{
$entity=$this->getManager()->createEntity();setCode($this->getRequest()->get(“code”)|
//$entity->setLabel($this->getRequest()->get(“label”)|
-------------------------------------------------------------------------
//这部分代码运行良好,但不是泛型的
$isProcessed=$this->processForm($entity);
如果($isProcessed){
$entityClass=ClassUtils::getRealClass($entity);
$classMetadata=$this->getManager()->getObjectManager()->getClassMetadata($entityClass);
$view=$this->view($classMetadata->getIdentifierValues($entity),代码::HTTP\u已创建);
}否则{
$view=$this->view($this->getForm(),代码::HTTP\u BAD\u请求);
}
返回$this->handleView($view);
}
编辑1:

如果我对$entity执行var_dump(),结果是: 字符串'GroupeGC\Bundle\ProductBundle\Entity\Product'(长度=44)(因此它不是空的) 那么为什么它不起作用呢?你实现了吗

/**
 * {@inheritdoc}
 */
public function getManager()
{
    return $this->get('your_manager_service_name');
}
在你的控制器里

您的_manager _service _名称应该在services.yml中声明,类似于:

    your_manager_service_name:
    class: %your_manager_service_name.class%
    arguments:
        - %your.entity.class%
        - @doctrine.orm.entity_manager

您的getManager方法调用的服务是否正确?
    your_manager_service_name:
    class: %your_manager_service_name.class%
    arguments:
        - %your.entity.class%
        - @doctrine.orm.entity_manager