mazbaul/comp

Custom Laravel Validator For Composite Key Validation

dev-master 2020-02-12 10:54 UTC

This package is auto-updated.

Last update: 2020-03-12 11:02:47 UTC


README

This package contains composite key validation rule for Laravel, that allows for validation of multi-column UNIQUE indexes.

Installation

Install the package through Composer. On the command line:

composer require mazbaul/comp

Configuration

Add the following to your providers array in config/app.php:

'providers' => [
    // ...

    Mazbaul\Comp\CompServiceProvider::class,
],

Usage

Use it like any Validator rule:


$validator = Validator::make($request->all(), [
      
      "<field1>" =>"required|max:30|composite_unique:<table>,<field2><field3>,...",
    ]);

See the Validation documentation of Laravel.

Ignore existing row (useful when updating)

You can also specify a row id to ignore (useful to solve unique constraint when updating)

This will ignore row with id 2


$validator = Validator::make($request->all(), [
      
      "<field1>" =>"required|max:30|composite_unique:<table>,<field2><field3>,...,ignore-$id",
    ]);

License

MIT