如何在 Symfony 2 中验证依赖于另一个属性的属性

2024-01-03

是否可以验证依赖于同一类的另一个属性的模型类的属性?

例如,我有这样的课程:

class Conference
{
    /** $startDate datetime */
    protected $startDate;

    /** $endDate datetime */
    protected $endDate;
}

我希望 Symfony 2.0 能够验证$startDate必须在之后$endDate.

这可以通过注释实现还是我必须手动执行此操作?


从...开始交响乐2.4你也可以使用表达 http://symfony.com/doc/current/reference/constraints/Expression.html验证约束来实现您所需要的。我确实相信这是最简单的方法。它肯定比回调约束更方便。

以下示例说明了如何使用验证约束注释更新模型类:

use Symfony\Component\Validator\Constraints as Assert;


class Conference
{
    /**
     * @var \DateTime
     *
     * @Assert\Expression(
     *     "this.startDate <= this.endDate",
     *     message="Start date should be less or equal to end date!"
     * )
     */
    protected $startDate;

    /**
     * @var \DateTime
     *
     * @Assert\Expression(
     *     "this.endDate >= this.startDate",
     *     message="End date should be greater or equal to start date!"
     * )
     */
    protected $endDate;
}

别忘了启用注释 http://symfony.com/doc/current/book/validation.html#configuration在您的项目配置中。

您始终可以使用以下方法进行更复杂的验证表达式语法 http://symfony.com/doc/current/components/expression_language/syntax.html.

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Symfony 2 中验证依赖于另一个属性的属性 的相关文章

随机推荐

  • SQL 选择最大 BY 组

    WEEK STUDENT CLASS TEST SCORE 1 1 A 1 93 1 1 A 2 97 1 1 B 1 72 1 1 B 2 68 1 1 C 1 93 1 1 C 2 51 1 1 H 1 19 1 2 A 1 88 1
  • 根据分组属性添加新列

    我想在 R 中添加一个新列 将我的子组总结为组 这是我的例子 id c 1 2 2 3 4 4 4 5 5 5 6 6 6 subgroup c lightred lightblue darkblue lightred darkred da
  • 检测处理器的数量

    如何检测 net 中物理处理器 核心的数量 System Environment ProcessorCount 返回逻辑处理器的数量 http msdn microsoft com en us library system environm
  • Linux内核中slab内存管理的缓存着色

    我最近读到有关slab系统的缓存着色的内容 但不明白 为什么为不同slab中的对象添加不同偏移量的缓存着色可以提高性能 我最初的猜测是 具有缓存偏移量的slab分配器 尝试将slab的第一个对象放在不同缓存颜色的内存中 如果客户端从这些sl
  • 如何覆盖已经有 !important 的 CSS 背景?

    我试图用时尚覆盖网站的背景 但它不起作用 网站的背景 css 也有一个 important 并且它是压倒性的 我的代码 body background image none important background black import
  • 有没有办法在 grpc 服务器端设置超时?

    无法从服务器端使 grpc 连接超时 客户端可能建立连接但保持保持 睡眠状态 从而导致 grpc 服务器连接挂起 服务器端有没有办法在一定时间后断开连接或设置超时 我们尝试从客户端断开连接 但无法从服务器端执行此操作 在这个链接中gRPC
  • 如何强制命令行使用 PHP 版本?

    我由 1and1 com 托管 并且我已将我的文件设置为使用 php5 进行解析 htaccess 但这仅适用于 apache 而不适用于命令行 命令行默认为服务器默认 php4 所以目前我无法设置计划任务以 php5 运行我的代码 有任何
  • .htaccess - 递归地将斜杠映射到下划线

    G day 正如标题所示 我正在尝试将网址格式设置为 this is mah page strucutre到文件this is mah page structure php 现在 我已经可以工作了 只是我不知道结构的深度 因此我需要进行一些
  • Julia 中 @sync @async 的并行性

    我有一些繁重的 csv 表 我想与 sync sync 宏并行导入 对此不太熟悉 我尝试了以下方法 import files sync async begin df1 CSV File libname df1 csv gt DataFram
  • Javascript 中基于区域设置的排序,以预定义的方式对重音字母和其他变体进行排序

    在芬兰语中 我们排序W after V 如英语 但是因为W不是芬兰本土字母 它被认为是一个变体V 它被排序为等于V 但在两个词之间唯一的区别是V is W then V 版本首先排序 一个例子说明了正确的顺序 Vatanen Watanen
  • OWIN创业班

    有人可以告诉我 OWIN 启动类的确切作用吗 基本上我正在寻找什么 它的目的是什么 何时调用 仅调用一次或每次请求 这是配置我的依赖注入库的好地方吗 Owin 被设计为可插拔设计 您可以从配置中更改 替换一组服务 例如在以下配置中 我有 启
  • 如何在iPhone的phonegap应用程序中的javascript中读取sqlite3的数据

    我正在 iPhone 的phonegap 中开发一个应用程序 其中我有一个sqlite3 数据库 其中包含纬度和经度值以及相应的区域名称 我已在应用程序中复制了 sqlite 数据文件 我需要从sqlite中获取数据并将表中的数据显示在视图
  • 重载运算符<<以接受模板函数

    我试图能够使用函数编写可扩展语法 但似乎找不到接受模板函数的正确语法 我使用的是 Visual C 2008 它将接受与模板函数相同类型的变量或类似的非模板函数 但不接受模板函数本身 错误 1 错误 C2679 二进制 class Gram
  • 所有运行的单元测试都以代码 0 (0x0) 退出,甚至没有命中断点

    我正在运行 Visual Studio 2017 15 9 程序已成功构建 但每次我右键单击 调试测试 时 编译器都会退出并显示以下消息 程序 xxxxx testhost x86 exe 已退出 代码为 0 0x0 调试输出屏幕和测试输出
  • 使用不连续索引进行 pyomo 优化

    我正在使用 pyomo 在 python 中进行优化 我计划使用 t start t end 范围内的索引 现在 这些 t start 和 t end 值是 EV 的函数 使得 m pyo ConcreteModel m EV pyo Ra
  • AMQP/RabbitMQ - 顺序处理消息

    我有一个direct交换 还有一个队列与该交换器绑定 该队列有两个消费者 消费者完成相应的处理后 将手动确认消息 消息按逻辑顺序 排序 并且应按该顺序进行处理 是否可以强制要求消费者 A 和消费者 B 按顺序接收和处理所有消息 换句话说 阻
  • WIX 中的指南语法?

    为 WIX 的 wxs 文件中的组件提供 guid 的正确语法是什么 在我发现的大多数样本中 Guid 00AD2D6E BF8A 4EA8 BE9A 57380DECD0E6 但在一些样本中我发现 Guid 00AD2D6E BF8A 4
  • 在Python中根据标签将一个大的xml文件分割成多个

    我有一个非常大的 xml 文件 我需要根据特定标签将其拆分为多个文件 XML 文件是这样的
  • php 的 glob 函数返回路径名的顺序是什么?

    The 文档 https www php net globfor glob 没有提到它返回路径名数组的顺序 如果有 但是 它确实提到了一个允许您禁用排序的标志 GLOB NO排序 返回目录中出现的文件 无 排序 数组是如何排序的glob当当
  • 如何在 Symfony 2 中验证依赖于另一个属性的属性

    是否可以验证依赖于同一类的另一个属性的模型类的属性 例如 我有这样的课程 class Conference startDate datetime protected startDate endDate datetime protected