ognjen/laravel-validatable

Validate eloquent model

Installs: 4 993

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 1

Forks: 1

Open Issues: 0

pkg:composer/ognjen/laravel-validatable

v1.0.1 2021-06-16 14:15 UTC

This package is auto-updated.

Last update: 2026-01-16 23:52:04 UTC


README

Validate eloquent model before saving.

Install

Require package with Composer:

composer require ognjen/laravel-validatable

Usage example

Define validation rules and messages on the model itself.

<?php
namespace App;

use Illuminate\Database\Eloquent\Model;
use Ognjen\Laravel\Validatable;

class User extends Model {
    use Validatable;

    const VALIDATION_MESSAGES = ['age.numeric'=> 'Custom numeric message'];
    protected $fillable = ['name', 'email', 'age'];
    
    protected function getValidationMessages()
    {
        return self::VALIDATION_MESSAGES;
    }

    protected function getValidationRules()
    {
        return [
            'name' => 'required',
            'email'=> 'required|email|unique:users,email',
            'age'=> 'required|numeric'
        ];
    }
}
$user = User::create([
    'name' =>'name',
    'email'=>'name@example.com',
    'age' => 66
]);

if ($user->hasValidationErrors())
{
    $user->getValidationErrors();
}  
$user = new User();
$user->name = 'name';
$user->email = 'name@example.com';
$user->age = 'not a numeric';

if ($user->save() === false)
{
    $user->getValidationErrors();
}