好吧,我实际上在Chrome,Firefox和IE中测试了我的表单代码,但是当朋友在他的Mac上测试我的表单时,我发现必填字段不起作用,因为Safari不接受所需的类。因此,当我按下发送按钮时,在表单的最后,我收到了数据库错误并且崩溃了。
我搜索了Symfony文档,然后在表单类中找到了这段代码:
public function setDefaultOptions(OptionsResolverInterface $resolver) {
$collectionConstraint = new Collection(array(
'name' => array(
new NotBlank(array('message' => 'Name should not be blank.')),
)
));
$resolver->setDefaults(array(
'constraints' => $collectionConstraint
));
}
但似乎什么也没做。我还把这个实体类放在了:
/**
* @Assert\NotBlank()
*/
public $name;
仍然得到错误。有什么想法我做错了什么?谢谢!
答案 0 :(得分:1)
Safari的问题在于它识别HTML5必需属性,但它不会阻止表单被提交。你需要使用javascript来检查它。