Overview
The ID Existence validation rules provide flexible ways to validate that provided IDs exist in database tables with support for additional conditions like soft deletes, status checks, date ranges, and custom queries. All rules in this family:- Accept both single IDs and arrays of IDs
- Use efficient batch queries with
whereIn - Support custom database connections
- Provide clear error messages with missing IDs
IdsExistInTable
Validates that IDs exist in a specific table and column.Constructor Parameters
string
required
Database connection name (e.g.,
'mysql', config('database.default'))string
required
Table name to check (supports schema prefix:
'security.users')string
default:"id"
Column name to validate against
array
default:"[]"
Additional WHERE conditions as key-value pairs
string|null
default:"null"
Key to extract from array items (for nested data)
Basic Usage
Array of IDs
With Additional Conditions
Nested Array Data
Error Message
IdsExistNotDelete
Validates that IDs exist and are not soft-deleted (checksdeleted_at IS NULL).
Constructor Parameters
string
required
Database connection name
string
required
Table name to check
string
default:"id"
Column name to validate against
array
default:"[]"
Additional WHERE conditions
string|null
default:"null"
Key to extract from array items
Usage
With Additional Conditions
IdsExistWithAnyStatus
Validates that IDs exist with one of the specified status values.Constructor Parameters
string
required
Database connection name
string
required
Table name to check
array
required
Array of acceptable status values
string
default:"status"
Status column name
array
default:"[]"
Additional WHERE conditions
Usage
Custom Status Column
With Additional Conditions
IdsExistWithDateRange
Validates that IDs exist with a date column within a specified range.Constructor Parameters
string
required
Database connection name
string
required
Table name to check
string
required
Date column name to check
string|null
default:"null"
Start date (inclusive). Format:
Y-m-d or Y-m-d H:i:sstring|null
default:"null"
End date (inclusive). Format:
Y-m-d or Y-m-d H:i:sarray
default:"[]"
Additional WHERE conditions
Usage
Only Start Date
Only End Date
IdsWithCustomQuery
Validates IDs using a custom query callback for maximum flexibility.Constructor Parameters
string
required
Database connection name
Closure
required
Callback function that receives a query builder and should return the modified query
string
default:"id"
Column name to validate against
array
default:"[]"
Additional WHERE conditions
string|null
default:"null"
Key to extract from array items
Basic Usage
Complex Query with Joins
With Organization Scope
Subquery Example
Complete Example
See Also
- Uniqueness Rules - Pivot table and composite uniqueness
- Validation Overview - All validation rules