返回 Skill 列表
extension
分类: 开发与工程无需 API Key

laravel-validation

表单请求验证和全面的验证测试。在处理验证规则、表单请求、验证测试,或当用户提到验证、表单请求、验证规则、条件验证、验证测试时使用。

person作者: jakexiaohubgithub

Laravel Validation

Form requests as single source of truth for validation, with comprehensive testing patterns.

Core Concepts

form-requests.md - Validation rules:

  • Array-based validation rules
  • Custom validation rules
  • Conditional validation
  • Custom error messages
  • DTO transformation via toDto()

validation-testing.md - Validation testing:

  • RequestDataProviderItem helper
  • Pest datasets for systematic testing
  • Built-in helper methods (string, email, number, date, array, boolean)
  • Nested array testing
  • Conditional validation testing
  • Real-world examples

Pattern

final class CreateOrderRequest extends FormRequest
{
    public function rules(): array
    {
        return [
            'user_id' => ['required', 'integer', 'exists:users,id'],
            'items' => ['required', 'array', 'min:1'],
            'items.*.product_id' => ['required', 'integer'],
            'items.*.quantity' => ['required', 'integer', 'min:1'],
        ];
    }

    public function toDto(): CreateOrderDto
    {
        return CreateOrderDto::from($this->validated());
    }
}

All validation lives in form requests. Test validation systematically.