1. Go to this page and download the library: Download willvincent/laravel-unique library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
willvincent / laravel-unique example snippets
return [
/*
|-----------------------------------------------------------------------------------------
| Unique Name Field
|-----------------------------------------------------------------------------------------
| The default field name to enforce uniqueness on.
*/
'unique_field' => 'name',
/*
|-----------------------------------------------------------------------------------------
| Constraint Fields
|-----------------------------------------------------------------------------------------
| Fields defining the scope of uniqueness. For example, to ensure unique equipment names
| within a department, set 'constraint_fields' to ['department_id'].
*/
'constraint_fields' => [],
/*
|-----------------------------------------------------------------------------------------
| Suffix Format
|-----------------------------------------------------------------------------------------
| Defines how suffixes are appended to duplicates. Use '{n}' as a placeholder for the number.
| Examples: ' ({n})' → 'Foo (1)', '-{n}' → 'foo-1'.
*/
'suffix_format' => ' ({n})',
/*
|-----------------------------------------------------------------------------------------
| Deduplication Max Tries
|-----------------------------------------------------------------------------------------
| Maximum attempts to generate a unique value before throwing an exception.
*/
'max_tries' => 10,
];
use WillVincent\LaravelUnique\HasUniqueNames;
class YourModel extends Model
{
use HasUniqueNames;
// Optional: Override default settings
protected $uniqueField = 'name'; // Field to keep unique (default: 'name')
protected $constraintFields = ['organization_id']; // Scope of uniqueness (default: [])
protected $uniqueSuffixFormat = ' ({n})'; // Suffix format (default: ' ({n})')
}