Laravel Packages

Friendly Prefix IDs for Eloquent Models

Published
Friendly Prefix IDs for Eloquent Models image

Laravel Prefixed IDs is a package by Spatie that automatically adds a friendly prefixed ID to Laravel models. As Freek Van der Herten describes in his introductory post about this package, it provides human-readable prefixes to otherwise random IDs. For example, you might give a token ID that contains a friendly prefix:

token_sandbox_FKdleMEKfiemsiDSMEODL

The token_sandbox prefix could indicate that it's a token for your sandbox environment, which would otherwise look like a random ID.

Here's an example model from Freek's article that illustrates how you use this package to indicate the model has a prefixed column:

namespace App\Models;
 
use Illuminate\Database\Eloquent\Model;
use Spatie\PrefixedIds\Models\Concerns\HasPrefixedId;
 
class YourModel extends Model
{
use HasPrefixedId;
}

If you follow the installation instructions, you'll need a table column for your model that contains the prefixed id, which defaults to prefixed_id.

Here are a few examples of how you might use this package with a model containing a prefixed ID:

$model = ApiToken::create();
$model->prefixed_id
 
ApiToken::findByPrefixedId('token_sandbox_fekjlmsme39dmMS'); // returns model
ApiToken::findByPrefixedId('invalid-id'); // null

You can learn more about this package, get full installation instructions, and view the source code on GitHub.

Paul Redmond photo

Staff writer at Laravel News. Full stack web developer and author.

Sponsored

acquaintsoft logo
Acquaint Softtech

Hire Laravel developers with AI expertise at $20/hr. Get started in 48 hours.

Visit Acquaint Softtech

The latest

View all →
Mastering Laravel Testing: A Video Course on Laravel Tests image

Mastering Laravel Testing: A Video Course on Laravel Tests

Read article
NativePHP Mobile Security Advisories: Update to 4.6.1 image

NativePHP Mobile Security Advisories: Update to 4.6.1

Read article
Volker Dusch on the PHP RCE Vulnerabilities and Disclosure image

Volker Dusch on the PHP RCE Vulnerabilities and Disclosure

Read article
Decide with Jev: Turn AI Answers into Decisions with PHP Rules image

Decide with Jev: Turn AI Answers into Decisions with PHP Rules

Read article
Skuul: Open-Source School Management Built on Laravel image

Skuul: Open-Source School Management Built on Laravel

Read article
Laravel Read Replicas: Prevent Stale Reads After a Write image

Laravel Read Replicas: Prevent Stale Reads After a Write

Read article