跳到内容

ExpressionSyntax

编辑此页

此约束检查该值是否为有效的 ExpressionLanguage 表达式。

基本用法

以下约束确保

  • the promotion 属性存储的值是有效的 ExpressionLanguage 表达式;
  • the shippingOptions 属性也确保表达式仅使用某些变量。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
// src/Entity/Order.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class Order
{
    #[Assert\ExpressionSyntax]
    protected string $promotion;

    #[Assert\ExpressionSyntax(
        allowedVariables: ['user', 'shipping_centers'],
    )]
    protected string $shippingOptions;
}

选项

allowedVariables

类型: arraynull 默认值: null

如果定义了此选项,则表达式只能使用名称包含在此选项中的变量。取消设置此选项或将其值设置为 null 以允许任何变量。

groups

类型: array | string 默认值: null

它定义了此约束的验证组。阅读更多关于 验证组 的信息。

message

类型: string 默认值: This value should be a valid expression.

这是验证失败时显示的消息。

payload

类型: mixed 默认值: null

此选项可用于将任意特定于域的数据附加到约束。配置的 payload 不会被 Validator 组件使用,但其处理完全取决于您。

例如,您可能希望使用 多个错误级别,以便根据错误严重程度在前端以不同方式呈现失败的约束。

本作品,包括代码示例,根据 Creative Commons BY-SA 3.0 许可获得许可。
目录
    版本