Download the PHP package k2gl/entity-exist without Composer
On this page you can find all versions of the php package k2gl/entity-exist. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download k2gl/entity-exist
More information about k2gl/entity-exist
Files in k2gl/entity-exist
Package entity-exist
Short Description Symfony validation constraint that asserts a matching database row exists (or does not), via Doctrine.
License MIT
Informations about the package entity-exist
Assert an entity exists (or does not) with a Symfony constraint and Doctrine
Requirements
- PHP 8.1+
- Symfony 6.1, 7.x or 8.x (
symfony/validator,symfony/dependency-injection) - Doctrine ORM 2.13+ or 3.x
Installation
You can add this library as a local, per-project dependency to your project using Composer:
Configuration
Makes classes in src/ available to be used as services in services.yaml
Usage
AssertEntityNotExist
AssertEntityExist
AssertCompositeEntityExist
A class-level constraint for when fields must reference an existing row as a
combination — not each field independently. AssertEntityExist on
warehouseId and on companyId separately would pass as long as each ID
exists somewhere; it can't tell whether the two belong together.
The violation is attached to the first field in fields by default; pass
errorPath to attach it elsewhere. Validation is skipped if any of the
fields is null or an empty string, same as the single-field constraints.
Reads the fields directly off the validated object (public properties, as in
the examples above); no extra service wiring needed — the services.yaml
snippet above already covers it.
Violation codes
Each constraint declares the violation code it emits as a UUID constant on its
own class (AssertEntityExist::NOT_EXIST, AssertEntityNotExist::EXIST,
AssertCompositeEntityExist::NOT_EXIST). Reading those at the call site can be
awkward — especially AssertEntityNotExist::EXIST, where the class name and
the constant negate each other.
For nicer reading in error handling and tests, the same codes are also exposed
under neutral names on ViolationCode:
ViolationCode constants are plain strings that reference the constraint
constants — no duplication, no separate source of truth.
Pull requests are always welcome
All versions of entity-exist with dependencies
doctrine/orm Version ^2.13|^3.0
symfony/validator Version ^6.1|^7.0|^8.0
symfony/dependency-injection Version ^6.1|^7.0|^8.0