У меня есть допустим метод, который должен апдейтить информацию о пользователе. Но параметров там получается тьма. Как лучше передавать? Массивом? И как потом сформировать запрос, чтобы апдейтились только те поля, которые были переданы в качестве аргумента в метод.
Ну по хорошему $user = User::find(1) $user->name = 'name' $user->save() ну и храни предыдущий стейт что бы можно было проверить что изменилось или при присвоении помечай какие поля изменились Тоже самое можно и с массивом
Что вот так вот просто публичный аттрибут менять? Это разве нормально? А со стейтами не понял. Как это выглядеть должно примерно?
представляешь https://laravel.com/docs/5.0/eloquent#insert-update-delete ну сделай поле raw и храни в нем массив с полученными значениями а при вызове save() проверяй текущее значение с предыдущим
Не нормально, но для ActiveRecord вроде Eloquent сойдёт. А по-хорошему - тщательнее делать декомпозицию, чтобы аргументов не было много.