2017-02-15 69 views
0

我使用Nelmio自动生成我的api文档。我想返回responseMap一个对象,它是一个简单的类(实体没有关联的数据库)是这样的:没有数据库的返回实体Nelmio Symfony

/** 
* @ApiDoc(
* description = "Get informations from user.", 
* responseMap = { 
*  200 = { "\AppBundle\Entity\MyUserInfos" }, 
* }, 
*) 
* 
* @Rest\View(statusCode=Response::HTTP_OK) 
* @Rest\Get("/my_user_infos") 
*/ 
public function getMyUserInfosAction(Request $request) { 
... 
} 


namespace AppBundle\Entity; 

/** 
* MyUserInfos 
*/ 
class MyUserInfos 
{ 
/** 
* @var string 
*/ 
private $username; 

/** 
* @var string 
*/ 
private $email; 

+getters and setters 
} 

但响应的对象是不是在我的API文档显示。谁能帮我 ? 谢谢。

回答

0

你的类名称中删除前导反斜杠

/** 
* @ApiDoc(
* description = "Get informations from user.", 
* responseMap = { 
*  200 = { "AppBundle\Entity\MyUserInfos" }, 
* }, 
*) 
* 
* @Rest\View(statusCode=Response::HTTP_OK) 
* @Rest\Get("/my_user_infos") 
*/ 
public function getMyUserInfosAction(Request $request) { 
... 
} 

参见:https://github.com/nelmio/NelmioApiDocBundle/blob/2d70b0802144fd2c868783c46fa1be4a774967d4/Resources/doc/swagger-support.rst#multiple-response-models

+0

谢谢您的回答。不幸的是它不能更好地工作。我试着用或不用支架,但没有改变。是否可以使用没有ORM链接的实体? –

+0

你绝对不需要任何ORM在这里。你能看到你的ApiDoc中的响应地图,并且相关属性是空的吗?如果您不使用ORM,则可能需要添加串行器注释。 –

+0

我看到了响应图(里面有代码200的“返回”部分),但属性是空的。我已启用序列化程序注释(默认序列化程序)。但没有成功。 –

相关问题