0
我正在使用JMS序列化程序包來序列化和反序列化restful api中的數據。我有以下情形:如何禁用自動轉換對象屬性?
實體:
/**
* Settings
*
* @ORM\Table(name="user_settings")
* @ORM\Entity
*
* @JMS\ExclusionPolicy("none")
* @JMS\AccessType("public_method")
*/
class Settings
{
/**
* @var boolean
*
* @ORM\Column(name="search", type="boolean")
*
* @JMS\Groups({"get", "update"})
*/
private $search;
}
我已經配置JMS使用學說對象的構造函數。
當我做一個POST和數據deserialise進入設置對象,它的工作原理,但在這樣的場景:
{"id":5, "search":"string"}
它會自動轉換爲字符串「串」成一個布爾值。我相信這與教條有關。如果我將ORM列註釋修改爲type =「string」,則不會發生轉換,這是我想要的,但我想保留type =「boolean」。
結合當前形勢,我無法驗證的對象,並說,「弦」是不是一個有效的價值,因爲它被強制轉換爲布爾之前,我可以做對象的任何驗證。
如果您需要進一步的解釋,請讓我知道,我會很感激你的幫助。