kduma / L5-eloquent-tokenable by kduma

Allows using tokens (HashIDs) instead of id in Laravel Eloquent models.
173
6
2
Package Data
Maintainer Username: kduma
Maintainer Contact: oss@krystian.duma.sh (Krystian Duma)
Package Create Date: 2015-01-31
Package Last Update: 2022-10-19
Home Page: https://opensource.duma.sh/libraries/eloquent-tokenable
Language: PHP
License: MIT
Last Refreshed: 2024-05-19 15:02:04
Package Statistics
Total Downloads: 173
Monthly Downloads: 0
Daily Downloads: 0
Total Stars: 6
Total Watchers: 2
Total Forks: 2
Total Open Issues: 1

L5-eloquent-tokenable

Latest Stable Version Total Downloads Latest Unstable Version License SensioLabsInsight StyleCI

Allows using tokens (HashIDs) instead of id in Laravel Eloquent models.

Setup

Add the package to the require section of your composer.json and run composer update

"kduma/eloquent-tokenable": "^1.1"

Prepare models

In your model add following lines:

use \KDuma\Eloquent\Tokenable;
protected $appends = array('token');

Optionally you can add also:

  • protected $salt = 'SALT';
    A salt for making hashes. Default is table name. This salt is added to your APP_KEY.

  • protected $length = 10;
    A salt length. Default is 10.

  • protected $alphabet = 'qwertyuiopasdfghjklzxcvbnm1234567890';
    A hash alphabet. Default is abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890

Usage

  • $model->token - Generate tokens
  • Model::whereToken($id)->first() - Find by token. (whereToken is query scope)

Hashids

A special thanks to creators of hashids, a PHP class that this package is based.

Packagist

View this package on Packagist.org: kduma/eloquent-tokenable