我的 Symfony2 API 使用 FOSRestBundle 和 JMSSerializer,带有属性注释,但很多时候我不想公开每个属性。我知道 JMS 有排除组,但我不知道如何将它们包含在我的 Symfony 控制器中。应该有一种在动态基础上使用 PHP 的方法,但文档中似乎也缺少这种方法。
问问题
3142 次
2 回答
4
如果您使用View
本示例setSerializationContext
中的类,则可以使用方法设置序列化上下文
public function getUsersAction()
{
$data = // get data, in this case list of users.
$view = $this->view($data, 200)
->setSerializationContext(SerializationContext::create()->setGroups(array('list')))
;
return $this->handleView($view);
}
于 2013-08-01T15:18:35.430 回答
4
从 FOSRest 2.0 版本开始,您必须使用这个:
$view = $this->view($response, $code);
$view->setContext($view->getContext()->setGroups(['get_client']));
于 2016-07-25T13:12:46.167 回答