Eloquent является реализацией шаблона Active Record.
Классы моделей Eloquent очень умные - они сами могут загрузить себя из базы и сохранить себя там же.
Класс User, наследуясь от Eloquent Model, наследует огромный пласт кода, который работает с базой данных и сам становится навеки связанным с ней.
Работая с ним, всегда приходится держать в голове такие факты как то, что $this->posts
- это не просто коллекция объектов Post.
Это псевдо-свойство, это проекция отношения posts
.
Нельзя просто взять и добавить туда новый объект. Придется вызвать что-то вроде $this->posts()->create(...)
.