正如标题所述,我正在尝试将自定义属性添加到我返回的序列化对象中。
让我们使用以下方法获取用户:
现在在序列化中我想添加一个属性fullName:Firstname + Lastname。
我的实体中有一个getter方法,如下所示:
/**
* get name
*
* @return string
*/
public function getName()
{
return $this->getFirstname()." ".$this->getLastname();
}
我的序列化文件如下所示:
AppBundle\Entity\User:
exclusion_policy: ALL
properties:
id:
expose: false
username:
expose: true
groups: [list, details]
email:
expose: true
groups: [details]
name:
expose: true
groups: [list, details]
我试过
name:
expose: true
groups: [list, details]
access_type: public_method
type: string
serialized_name: fullName
accessor:
getter: getName
和其他变种,但我似乎无法做对。
Note: Yes I've cleared my cache and tried it again.
任何人都能告诉我我错过了什么?
提前致谢!
答案 0 :(得分:1)
由于您的全名根本不是属性,因此您必须定义虚拟属性:
AppBundle\Entity\User:
exclusion_policy: ALL
properties:
# All properties but not name
virtual_properties:
getName:
groups: [list, details]
serialized_name: fullName