我問自己有關用戶發送表單時的驗證......我看到了文檔和教程。他們解釋2種方法來有效DATAS:最佳實踐symfony驗證
文檔:
你必須創建文件: /Resources/config/validation.yml
然後加入類似的東西:
Acme\BlogBundle\Entity\Author:
properties:
name:
- NotBlank: ~
我在互聯網上看到的教程:
他們直接在實體中添加約束如:
use Symfony\Component\Validator\Constraints as Assert;
/**
* @var string $title
*
* @ORM\Column(name="title", type="string", length=255)
* @Assert\MinLength(10)
*/
private $title;
有一個最佳實踐嗎?我應該在validation.yml中還是在我的實體中編寫所有約束?是否有可能面對沒有實體背後的形式?從單獨的文件
效益: 你把所有的約束只有一個文件從實體文件
效益: 你必須與你的形式constaints SQL constaints,你有字段類型。
那麼,我應該使用什麼?或者沒有人關心這件事?
編輯:我沒有找到有關如何在validation.yml添加變量就像任何信息:
Acme\BlogBundle\Entity\Author:
constraints:
- Symfony\Bridge\Doctrine\Validator\Constraints\UniqueEntity:
fields: [name]
message: {{ name }} isn't available
在實體:
@Assert\UniqueEntity(message='{{ name }} isn't available'
最好的問候,
實際上有第三種方法是直接向您的表單添加驗證。沒有最佳做法。選擇最適合你的方法。 – Cerad