Symfony 2のどのプロパティ(およびその理由)serialize()
とメソッドを含める必要がありますか?deserialize()
今のところ私はid
フィールドを持っていて、それはうまくいきますが、クラスでの理由と目的を知りたいです。このメッセージを回避するには、次のようにします。serialize()
User
識別子を含まないEntityUserProviderからユーザーを更新することはできません。ユーザーオブジェクトは、Doctrineによってマップされた独自の識別子を使用してシリアル化する必要があります。
Class User implements AdvancedUserInterface, \Serializable
{
/**
* @return string
*/
public function serialize()
{
return serialize($this->id);
}
/**
* @param string $data
*/
public function unserialize($data)
{
$this->id = unserialize($data);
}
}
実装せず\Serializable
、すべてのプロパティを使用している間protected
、私は次のようになります。
Symfony \ Component \ Security \ Core \ Authentication \ Token \ UsersnamePasswordToken :: serialize()は文字列またはNULLを返す必要があります。