正则表达式在类实体symfony中无效

ql3eal8s  于 2022-11-16  发布在  其他
关注(0)|答案(1)|浏览(124)

有两个实体:产品和产品详情:

class ProductDetail {

#[ORM\ManyToOne(targetEntity: Product::class, inversedBy: 'productDetail')]
#[ORM\JoinColumn(nullable: false)]
private $productItem;

#[ORM\Column(type: 'date', nullable: true)]
#[Assert\GreaterThan('today')]
#[Assert\Expression(
    expression: 'this.getProductItem()->getStatus() in ['not done'] or value',
    message: 'The planification date cannot be null for this status!',
)]
private $finishedDate;

class Product {

#[ORM\Column(type: 'string', length: 255)]
private $status;

基本上,我想为finishedDate创建一个约束,当状态为'not done'时,不允许为空。但它并不是什么都不做,我很好奇我是否遗漏了什么。即使我把value放在那里,日期为空,消息也不会被触发。

nimxete2

nimxete21#

显示此链接:https://symfony.com/doc/current/components/expression_language/syntax.html
你能不能试试:

this.getProductItem().getStatus()

您可以在自己的案例中使用自定义约束,它更灵活:https://symfony.com/doc/current/validation/custom_constraint.html

相关问题