gpt4 book ai didi

php - Symfony2 验证日期时间 1 应该在日期时间 2 之前

转载 作者:IT王子 更新时间:2023-10-28 23:59:16 25 4
gpt4 key购买 nike

我正在查看 Symfony2 验证引用,但没有找到我需要的。

我有一个具有 StartDateEndDate 的类就业。我想添加一个\@Assert() 来验证 StartDate 始终在 EndDate 之前。是否有一种标准方法可以将类属性作为验证约束进行比较,还是应该创建自定义验证约束?

class Employment {

/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
* @Expose()
*/
protected $id;

/**
* @ORM\Column(type="datetime")
* @Expose()
* @Assert\DateTime()
*/
protected $startDate;

/**
* @ORM\Column(type="datetime", nullable=TRUE)
* @Expose()
* @Assert\DateTime()
*/
protected $endDate;

...
}

最佳答案

您可以向实体添加验证 setter/getter - Symfony2 Validation Getters

在你的验证中

Acme\YourBundle\Entity\Employment:
getters:
datesValid:
- "True": { message: "The start date must be before the end date" }

然后在你的实体中

public function isDatesValid()
{
return ($this->startDate < $this->endDate);
}

关于php - Symfony2 验证日期时间 1 应该在日期时间 2 之前,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15972404/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com