Как получить последний URL-адрес главы для каждой книги в Laravel? - PullRequest
0 голосов
/ 10 сентября 2018

У меня есть книжный сайт, созданный с помощью laravel, есть ли способ узнать и сохранить последние URL-адреса глав, посещенных каждой книгой, в базе данных? Для справки в следующий раз, когда пользователь придет книга, он будет знать, где он может читать дальше. Спасибо!

Ответы [ 2 ]

0 голосов
/ 10 сентября 2018

Использование файлов cookie позволит пользователю выбрать, где он остановился, даже если он не вошел в систему, но вы должны также установить его в учетной записи пользователя, чтобы вы могли отслеживать прогресс пользователя, даже если он вошел в систему. другое устройство. Это помогает, если пользователям необходимо войти в систему, чтобы прочитать вашу книгу, потому что тогда у вас всегда будет аутентифицированный пользователь, на которого вы сможете зарегистрировать журнал.

Я бы посоветовал вам отслеживать идентификатор пользователя, идентификатор главы и, возможно, идентификатор книги, а также дату и время (это может быть столбец create_at, который заполняется автоматически). Регистрируя эти вещи, вы можете рассказать гораздо больше об использовании книг и поведении пользователей, чем если бы вы просто регистрировали, какой URL они посетили в последний раз.

Вы можете прослушать событие retreived, а затем создать элемент журнала:

<?php

class Chapter extends Model
{
    protected $dispatchesEvents = [
        'retreived' => LogUserReading::class,
    ];
}

class LogUserReading
{
    public function handle(Chapter $chapter)
    {
        ReadingLog::create(Auth::user()->id, $chapter->id, $chapter->book->id);
    }
} 

Затем, чтобы узнать, например, где последний пользователь остановился, просто выберите последний элемент из журнала чтения.

0 голосов
/ 10 сентября 2018

Попробуйте использовать Redis - https://laravel.com/docs/5.6/redis

 Redis::set('latestChapter', '35');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...