[英]Symfony3 form validation not called for field use by a model transformer
[英]symfony3 same validation for model and admin form
我正在使用FOS用戶捆綁包和Sonata管理員捆綁包 。 我在模型中驗證:
//src\AppBundle\Entity\User.php
//class User extends BaseUser
/**
* @var string
* @Assert\NotBlank(
* message = "xxx"
* )
* @ORM\Column(name="address", type="text")
*/
private $address;
我想在AdminController中使用相同的驗證-是否可以選擇如何繼承模型的驗證? 現在我必須這樣做:
//src\AppBundle\Admin\UserAdmin.php
//class UserAdmin extends AbstractAdmin
public function validate(ErrorElement $errorElement, $object)
{
$errorElement
->with('address')
->assertNotBlank()
->end();
}
您可以使用自定義驗證組執行此操作。
第一組是“驗證約束”。
從您提供的示例中
//src\AppBundle\Entity\User.php
//class User extends BaseUser
/**
* @var string
* @Assert\NotBlank(
* message = "xxx",
* groups={"reg"}
* )
* @ORM\Column(name="address", type="text")
*/
private $address;
接下來,在您的管理類中定義一個受保護的$ formOptions屬性,如下所示
//src\AppBundle\Admin\UserAdmin.php
//class UserAdmin extends AbstractAdmin
protected $formOptions = array(
'validation_groups' => 'reg'
);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.