happyr/entity-exists-validation-constraint 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

happyr/entity-exists-validation-constraint

最新稳定版本:1.3.0

Composer 安装命令:

composer require happyr/entity-exists-validation-constraint

包简介

Verify that your entity exists

README 文档

README

Latest Version Software License Build Status Code Coverage Quality Score Total Downloads

A small validator that verifies that an Entity actually exists. This is especially useful if you use Symfony Messenger component. Now you can safely validate the message and put it on a queue for processing later.

namespace App\Message\Command;

use Happyr\Validator\Constraint\EntityExist;
use Symfony\Component\Validator\Constraints as Assert;

final class EmailUser
{
    /**
     * @Assert\NotBlank
     * @EntityExist(entity="App\Entity\User")
     *
     * @var int User's id property
     */
    private $user;

    /**
     * @Assert\NotBlank
     * @EntityExist(entity="App\Entity\Other", property="name")
     *
     * @var string The name of "Other". We use its "name" property. 
     */
    private $other;

    // ...

In case you are using other constraints to validate the property before entity should be checked in the database (like @Assert\Uuid) you should use Group sequence in order to avoid 500 errors from Doctrine mapping.

namespace App\Message\Command;

use Happyr\Validator\Constraint\EntityExist;
use Symfony\Component\Validator\Constraints as Assert;

/**
 * @Assert\GroupSequence({"EmailUser", "DatabaseCall"})
 */
final class EmailUser
{
    /**
     * @Assert\NotBlank
     * @Assert\Uuid
     * @EntityExist(entity="App\Entity\User", groups={"DatabaseCall"}, property="uuid")
     *
     * @var string Uuid
     */
    private $user;

    // ...

Install

composer require happyr/entity-exists-validation-constraint

Then register the services with:

# config/packages/happyr_entity_exists_validator.yaml
services:
  Happyr\Validator\Constraint\EntityExistValidator:
    arguments: ['@doctrine.orm.entity_manager']
    tags: [ 'validator.constraint_validator' ]

Note

The Validator will not produce a violation when value is empty. This means that you should most likely use it in combination with NotBlank.

统计信息

  • 总下载量: 158.67k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 32
  • 点击次数: 0
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 31
  • Watchers: 1
  • Forks: 11
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2019-07-28