Size: a a a

Laravel для начинающих

2021 June 11

D

Dimk_O in Laravel для начинающих
Видел просто как в модели пихают функции для продуктов в том числе и с рекуестом
источник

D

Dimk_O in Laravel для начинающих
думал так правильнее чем в контроллере
источник

С

Сидредин in Laravel для начинающих
источник

AH

Andrey Helldar in Laravel для начинающих
Что-то типа такого надо:

Route::get('set', function () {
   $models = Post::where(...)->get();

   $ids = $models->pluck('id')->toArray();

   $cookie = cookie('seen_recently', $ids, 999);
   
   return response($models)->withCookie($cookie);
});
источник

D

Dimk_O in Laravel для начинающих
А просто айдишки записываешь
источник

D

Dimk_O in Laravel для начинающих
ясно
источник

AH

Andrey Helldar in Laravel для начинающих
Нет, это люди, не умеющие думать. Их ещё называют "кодеры".
источник

D

Dimk_O in Laravel для начинающих
Понятно
источник

AH

Andrey Helldar in Laravel для начинающих
Ну да. А когда надо сам список вывести, получаешь эти id и выводишь.

Например, так:

Route::get('recently', function () {
   $ids = request()->cookie('seen_recently', []);

   $models = Post::whereIn('id', $ids)->get();

   return response($models);
});
источник

D

Dimk_O in Laravel для начинающих
Только здесь проблема в другом
источник

D

Dimk_O in Laravel для начинающих
юзер то посещает не 1 продукт
источник

D

Dimk_O in Laravel для начинающих
а несколько
источник

D

Dimk_O in Laravel для начинающих
Надо как-то в куку добавляю продукт к существующим
источник

AH

Andrey Helldar in Laravel для начинающих
Юзер авторизован или это гость?
источник

D

Dimk_O in Laravel для начинающих
гость
источник

D

Dimk_O in Laravel для начинающих
но может быть и авторизован
источник

AH

Andrey Helldar in Laravel для начинающих
При открытии страницы продукта получаешь ID из кук, добавляешь в него новый ID и суёшь обратно
источник

D

Dimk_O in Laravel для начинающих
то есть вот так?
источник

D

Dimk_O in Laravel для начинающих
$products = unserialize(cookie()->get('product_seen_recently'));
           $cookie = cookie()->forever('product_seen_recently', serialize(array_push($products, $this->toArray())));
источник

D

Dimk_O in Laravel для начинающих
только айдишки
источник