Eloquent Tokenable

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)
Table of Contents