Skip to main content

Introduction

Rest Generic Class provides a comprehensive set of custom validation rules designed for complex database validation scenarios commonly found in REST APIs. These rules extend Laravel’s built-in validation with specialized functionality for:
  • Database existence checks with complex conditions
  • Pivot table uniqueness validation
  • Bulk/array operation validation
  • Composite uniqueness constraints
  • Array size validation with custom messages

Available Rules

Existence Validation

Rules for validating that IDs exist in database tables with various conditions:

IdsExistInTable

Validate that IDs exist in a specific table

IdsExistNotDelete

Validate IDs exist and are not soft-deleted

IdsExistWithAnyStatus

Validate IDs exist with specific status values

IdsExistWithDateRange

Validate IDs exist within a date range

IdsWithCustomQuery

Validate IDs with a custom query callback

Uniqueness Validation

Rules for ensuring data uniqueness in various contexts:

UniqueInPivot

Validate uniqueness in many-to-many relationships via pivot tables

UniqueInPivotArray

Bulk validation of pivot table uniqueness

UniqueCompositeInArray

Validate composite uniqueness for bulk operations

ArrayCount

Validate array element count with custom messages

Common Patterns

Database Connection

All database validation rules accept a connection parameter:

Array vs Single Value

Most rules automatically handle both single values and arrays:

Additional Conditions

Many rules support additional WHERE conditions:

Usage in FormRequests

Basic Example

Advanced Example with Multiple Rules

Error Messages

All rules provide clear, actionable error messages:

Performance Considerations

All validation rules use efficient database queries with proper indexing support. Batch validations use single queries with whereIn clauses rather than multiple individual queries.

Efficient Bulk Validation

Testing

Example test for custom validation rules:

Next Steps

ID Existence Rules

Learn about validating ID existence with various conditions

Uniqueness Rules

Explore pivot table and composite uniqueness validation