Laravel Readable
Make eloquent models readable, (*1)
Introduction
For cases where you would like multiple users to be able to mark something as read. In somecases a read_at collumn can easily be added to a reasource table in order to store similar information, this package is for cases where this is not practical., (*2)
Overview
A reads table is created to keep track of read resources., (*3)
Installation
- Add
"andheiberg/readable": "dev-master"
to your composer.json
- Run
composer update
- Run
php artisan migrate --package="andheiberg/readable"
- Add
use \Andheiberg\Readable\Traits\IsReadable;
inside every model you want to be readable
Usage
Congratulations! Now you can use read resources., (*4)
Examples
Now you can use it like a pro., (*5)
/**
* Mark a resource as read
*
* @var void
*/
public function markAsRead()
/**
* Mark a resource as unread
*
* @var void
*/
public function markAsUnread()
/**
* Limit query to read resources
*
* @var void
*/
public function scopeRead($query, $user_id = null)
/**
* Limit query to unread resources
*
* @var void
*/
public function scopeUnread($query, $user_id = null)
Post::find(1)->markAsRead();