问题很直接,我认为:
我需要表单中的唯一值验证器,我可以通过这样的操作来实现这一点:
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
/**
* DataClass
*
* @ORM\Table(name="data_class", uniqueConstraints={@ORM\UniqueConstraint(co
我想在字段"username“和"email”上设置一个唯一的约束,但它不起作用:
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use FOS\UserBundle\Model\User as BaseUser;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
/**
* @ORM\Table(name="acteurs")
* @ORM\Enti
意图:我想测试我想要的验证是否在School实体上,我想为该实体编写一个扩展TypeTestCase的测试类
Questions/problems:
Error: Class "doctrine.orm.validator.unique" not foundI想要为元素的每个约束断言错误消息,我想清除错误。当我从模型中删除#[UniqueEntity('name')]时,问题1就消失了,但是断言self::assertCount(1, $form->getErrors());仍然失败。这意味着$form->getErrors()没有对名称为空的验证错
我正在尝试让Symfony的UniqueEntity验证器为我的信条实体工作。Symfony验证器已经连接并正常工作,但是Symfony\Bridge的UniqueEntity更具挑战性,显示以下错误:
PHP Fatal error: Class 'doctrine.orm.validator.unique' not found in /app/vendor/symfony/validator/Symfony/Component/Validator/ConstraintValidatorFactory.php on line 46
看起来好像ValidatorFactory
@UniqueEntity不适合我。在控制器中,我使用$ form ->isValid()和form passes,但它不应该使用。
SQLSTATE23000:完整性约束违反: 1062重复条目'media30‘的键'UNIQ_115E494BF47645AE’
我有以下表格:
class BIPType extends AbstractType{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->
此方法位于我的实体类中。
public function validateStartDate(ExecutionContextInterface $context)
{
if ($this->getEndDate() < $this->getStartDate()){
$context->addViolationAt(
'endDate',
'End date cannnot be before Start date',
array(),
我使用Symfony表单来创建和验证我的表单--我不是在实体中使用断言,而是在表单中使用约束。使用UniqueEntity时,如果存在问题,则不能将实体或存储库与约束关联。
My FormType
<?php
namespace App\Form;
use App\Entity\Business;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Cor
当我试图注册一个被认为是电子邮件唯一的新用户时,UniqueEntity约束起了很大的作用,虽然错误位于密码字段而不是电子邮件字段上,但有人知道为什么吗?
用户类别:
use FOS\UserBundle\Model\User as FOSUser;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
(...)
use Gedmo\Mapping\Annotation as Gedmo;
/**
* User
*
* @ORM\Table()
* @UniqueEntity("email")
我正在使用类UniqueEntity来验证电子邮件何时已经用于添加新用户。当我添加一个新用户时,这个方法工作得很好,但是当我尝试用一个用户输入电子邮件和密码登录时,返回的错误提示这封电子邮件已经存在。如果我删除了UniqueEntity,登录就可以正常工作。
我的代码:
namespace Demo\DBBundle\Entity;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
/**
* User
*
* @UniqueEntity("email")
*/
class User
{
我想在__construct中注入Symfony\Component\Security\Core\Security来获取当前用户。它需要我使用@UniqueEnitity验证器:
<?php
declare(strict_types=1);
namespace App\Entity;
use ApiPlatform\Core\Annotation\ApiResource;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use Symfony\Component\Security\Core\Securi
我有一个Doctrine用户实体,我试图为注册表单添加表单验证器,但它们在任何情况下都不会为注册表单触发。
我的用户实体:
namespace JMSHockey\AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\AdvancedUserInterface;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Bridge\Doctrine\Validator\Constrain
在我的情况下,实体类中的验证约束被忽略.
这个程序不工作(它是ActivityField实体的一个子实体):
<?php
namespace XXX\ActivityFieldsBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use XXX\DatabaseBundle\Entity\AbstractEntity;
use Symfony\Component\Validator\Constraints as Assert;
/**
* @ORM\Entity(repositoryClass="XXX\ActivityField
当我使用UniqueEntity时,验证消息有问题。
这是我的代码:
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntityValidator;
/**
* LaboratoryTestRequest
*
* @ORM
我一直在用Symfony2创建一个用户注册表单。我试图对我的email类的User属性定义一个唯一的约束。
Acme\APPBundle\Entity\User.php
namespace Acme\APPBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\UserInterface;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Bridge\Doctrine\Validato
我有一个相当简单的带有UniqueEntity验证的实体:
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Security\Core\User\UserInterface;
use Doctrine\ORM\Mapping\ManyToOne;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
use Doctrine\ORM\Mapping\HasLifecycleCallbacks;
/**
* @O
我被要求收回几个月前离开公司的人的代码。他开发了一个应用程序,允许一些人要求修改防火墙规则,当要求更改时,您可以选择/填充:防火墙名称(对应防火墙接口)端口源地址目的地地址服务类型(TCP/UDP/ICMP)
数据库中有两个表:
Rule FW
---------- ---------
ID ID
Fw_Id
我在Symfony 2.2中遇到了这些验证约束的问题。
"username“和"pass”的验证约束似乎没有考虑在内。但是"UniqueEntity“约束是有效的。
我不认为我在yaml语法中犯了错误。
以下是yml语法:
Fastre\PhpFtpAdminBundle\Entity\Account:
properties:
username:
- Regex: {pattern: "/[a-zA-Z0-9]+/", message: Le nom d'utilisateur ne peut contenir que d
我一直在尝试使用Symfony3上的服务创建一个带有参数的自定义验证约束。
问题是我在提交表单后得到了一个异常:
Catchable Fatal Error: Argument 1 passed to OC\PlatformBundle\Validator\AntifloodValidator::__construct() must be an instance of Symfony\Component\HttpFoundation\RequestStack, none given, called in C:\wamp\www\Symfony\vendor\symfony\symfony\sr
我有一个实体,它有一个字段,不包含在表单中,而是根据输入的其他字段值计算的。当前,该值在生命周期回调中设置:
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\PrePersist
* @ORM\PreUpdate
*/
public function prePersist() {...}
我希望在DB表列的作用域中保持此值的唯一性,并在保存之前对其进行修改,直到它是唯一的。
我尝试使用UniqueEntity,但在实体创建对象时,字段的值为NULL (未知)。因此,在表单提交后,在验证时间内,它将保持不变。当实际调用prePersist()时
我尝试在一个简单的实体上使用UniqueEntity约束。问题是,我在错误页面上重定向,并且在我的字段下面没有任何错误消息。
下面是我的实体:
use Doctrine\ORM\Mapping as ORM;
use Symfony\Component\Validator\Constraints as Assert;
use Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity;
/**
* Plant
*
* @ORM\Table(name="plant")
* @UniqueEntity(fields