symfony Doctrine -- Ошибка Array to string conversion

Задача

Сохранить в поле таблицы массив значений. Например, массив Id пользователей, являющихся "друзьями" данного пользователя.

Ошибка

При попытке сохранения в БД при различных вариантах исполнения методов появлялись разные ошибки:

Array to string conversion

FatalThrowableError: Call to a member function contains() on string

An exception occurred while executing 'UPDATE "user" SET friends = ? WHERE id = ?' with params [[25], 26]: Notice: Array to string conversion

Expected value of type "Doctrine\Common\Collections\Collection|array" for association field "AppBundle\Entity\User#$friends", got "integer" instead.

Видимо, сохранить массив в виде array не получится

Решение

Если требуется поместить в свойство объекта массив значений, всегда придётся создавать связанную таблицу с внешним ключом, и работать с массивом значений с помощью класса ArrayCollection.

Например,

Для сохранения информации о друзьях пользователя (User) необходимо создать связь ManyToMany Self-referencing.
Для сохранения информации о жильцах(User) одного дома(House), необходимо создать OneToMany связь.

Key Words for FKN + antitotal forum (CS VSU):