Php 允许数组形式验证symfony

Php 允许数组形式验证symfony,php,forms,symfony,validation,yaml,Php,Forms,Symfony,Validation,Yaml,我想验证该类时出错 /** * @SWG\Property( * type="string", * description="The customer's uuid", * example="ffs-cse48q4s-csvdf-5sd" * ) */ public $guidCustomer; /** * @SWG\

我想验证该类时出错

    /**
     * @SWG\Property(
     *     type="string",
     *     description="The customer's uuid",
     *     example="ffs-cse48q4s-csvdf-5sd"
     * )
     */
    public $guidCustomer;

    /**
     * @SWG\Property(
     *     type="array",
     *     description="",
     *     @SWG\Items(
     *         @SWG\Property(property="guid_invitation", type="string", example="ferfrd7"
......................
     *     )
     * )
     */
    public $invitations;

我正在使用一个来自命令的动态表单生成系统。我希望对邀请字段进行验证,该字段是一个php数组,我不知道该放什么,在我尝试使用的文档中找不到它,我总是出现以下错误:

{
  "message": "validation.failed",
  "errors": [
    {
      "field": "invitations",
      "message": "This value is not valid."
    }
  ]
}

这取决于邀请数组内容

例如,如果您有一个组成数组的邀请实体(甚至是一个简单的类),请将断言放在每个字段上,然后在邀请字段上使用“Valid”assert()

但是,我们需要关于数组内容的更多信息,但是您可以在邀请上放置All assert(),并添加自定义约束


如果您没有邀请子类,我会选择邀请子类,它不需要是一个实体。

如果它不是问题的答案,请不要将其作为答案发布
{
  "message": "validation.failed",
  "errors": [
    {
      "field": "invitations",
      "message": "This value is not valid."
    }
  ]
}
   /**
     * @SWG\Property(
     *     type="array",
     *     description="The customer's invitations",
     *     @SWG\Items(
     *         @SWG\Property(property="validity", type="integer", example=30),
     *         @SWG\Property(property="guid_invitation", type="string", example="ferfrd7-fr78d-dsfhbju-58az"),
     *         @SWG\Property(property="manager_reference", type="integer", example=2),
     *         @SWG\Property(property="last_name", type="string", example="Sting"),
     *         @SWG\Property(property="first_name", type="string", example="Bob"),
     *         @SWG\Property(property="phone", type="string", example="0681694512"),
     *         @SWG\Property(property="email", type="string", example="owner@octime.com"),
     *         @SWG\Property(property="entities_ids", type="string", example="2;28;14"),
     *         @SWG\Property(property="entities_names", type="string", example="France;Région PACA;Usine Marseille;Administation"),
     *         @SWG\Property(property="professions_ids", type="string", example="14;45;12"),
     *         @SWG\Property(property="professions_names", type="string", example="AIDE COMPTABLE;Responsable Paye et administration du personnel;Administation"),
     *     )
     * )
     * @Assert\Collection(
     *     fields={
     *         "validity" = @Assert\Required({@Assert\NotBlank}),
     *         "guid_invitation" = @Assert\Required({@Assert\NotBlank}),
     *         "manager_reference" = @Assert\Required({@Assert\NotBlank}),
     *         "last_name" = @Assert\Required({@Assert\NotBlank}),
     *         "first_name" = @Assert\Required({@Assert\NotBlank}),
     *         "phone" = @Assert\Required({@Assert\NotBlank}),
     *         "email" = @Assert\Required({@Assert\NotBlank}),
     *         "entities_ids" = @Assert\Required({@Assert\NotBlank}),
     *         "entities_names" = @Assert\Required({@Assert\NotBlank}),
     *         "professions_ids" = @Assert\Required({@Assert\NotBlank}),
     *         "professions_names" = @Assert\Required({@Assert\NotBlank}),
     *     }
     * )
     */
    public $invitations = [
        'validity' => 30,
        'guid_invitation' => 'ferfrd7-fr78d-dsfhbju-58az',
        'manager_reference' => 2,
        'last_name' => "Sting",
        'first_name' => "Bob",
        'phone' => "0681694512",
        'email' => "owner@octime.com",
        'entities_ids' => "2;28;14",
        'entities_names' => "France;Région PACA;Usine Marseille;Administation",
        'professions_ids' => "14;45;12",
        'professions_names' => "AIDE COMPTABLE;Responsable Paye et administration du personnel;Administation",
    ] ;