Использование файлов 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);
}
}
Затем, чтобы узнать, например, где последний пользователь остановился, просто выберите последний элемент из журнала чтения.