我在我的表单上使用DataTransformer
将reverseTransform
客户端发送到Money/Money
对象的十进制值。
这可以正常工作,但是当我使用FosRestBundle视图层将数据返回给客户端时,我不知道如何使用该转换器将其转换回客户端的十进制值? / p>
答案 0 :(得分:1)
如果您正在使用带有FOSRestBundle的JMSSerializer,则序列化程序通常会使用反射来访问对象的值,因此不会触及getter。
但是,您可以使用access_type
设置将对象的属性或所有属性的访问类型设置为公共方法(getters / setters)。
对于注释,您将使用..
use JMS\Serializer\Annotation\AccessType;
class YourClass
{
/**
* @AccessType("public_method")
*/
private $money;
....
}
有关详细信息,请参阅:
注释:http://jmsyst.com/libs/serializer/master/reference/annotations#accessor
XML:http://jmsyst.com/libs/serializer/master/reference/xml_reference
YAML:http://jmsyst.com/libs/serializer/master/reference/yml_reference