Здравствуйте.
Делаю корзину для интернет магазина и столкнулся с проблемой.
У меня есть мутатор getCostAttribute()
. Поля ‘cost’
в таблице с товарами не существует. Этот мутатор возвращает стоимость товара с учетом скидки (если таковая есть).
Проблема заключается в следующем.
При добавлении товара в корзину, я сохраняю его модель в сессию вот так:
Session::put("product.{$id}", $product->getAttributes())
. Таким образом я храню товары в корзине пользователя в виде массива, который получаю через метод getAttributes()
.
Однако этот метод не возвращает атрибут cost
, который я указал в классе модели: protected $appends = ['cost']
, — он его просто игнорирует.
Также у модели есть привязанный к ней файл, описанный через $attachOne
— это картинка товара. Она тоже игнорируется
Как мне сделать так, чтобы модель в сессии сохранялась полностью вместе с $appends
параметрами?