Мы реализуем AdvancedUserInterface
для управления аутентификацией, но по какой-то причине безопасность Symfony будет сериализовать весь User
объект, а не только в минимально необходимых полей (например, id
, username
, password
).Symfony является пользовательским интерфейс сериализация всего массивного объекта пользователя
Согласно documentation, мы должны указать точные поля, которые должны быть сериализованы (а затем остальные поля будут проигнорированы).
class User implements AdvancedUserInterface, \Serializable {
/**
* @see \Serializable::serialize()
*/
public function serialize()
{
return serialize(array(
$this->id,
$this->username,
$this->password
));
}
}
Но хотя мы делаем это, безопасность Symfony игнорирует этот serialize()
метод и до сих пор сериализации ВЕСЬ объект. Это нарушает знак, потому что объект становится слишком большим для сериализации и хранения.
Chadwick, вам удалось это исправить? Я сталкиваюсь с той же проблемой, и пользовательский объект сериализуется в сеанс со всеми видами других объектов связи. – undefinedman
@undefinedman мы нашли решение (потому что все работает), но я не помню, что это было ... Я думаю, что мы как-то удалили отношения (реструктурировали наши сущности), чтобы они не ассоциировались. Извините, я не могу быть более конкретным. –