forms - Symfony 2.7,如果字段为空,表单将不会提交
问题描述
我有一个经典的表单,有几个“实体”类型字段和一个集合类型字段。这些不会引起任何问题。当我将数据放入除描述字段之外的所有字段中时,因为我希望它为空或为空,然后提交,我的表单被处理但新实体没有添加到数据库中,好像描述字段需要是字段.
然后我被重定向到相同的表单,所有输入的数据都消失了,就好像它已添加到数据库中一样。
我检查了设置为 nullable 的字段映射:
/**
* @var string
*
* @ORM\Column(name="description_activite", type="text", nullable=true)
*/
private $descriptionActivite;
public function getDescriptionActivite(){return $this->descriptionActivite;}
public function setDescriptionActivite($value){$this->descriptionActivite=$value;return $this;}
以及 formType 文件中的字段描述:
->add('descriptionActivite', 'textarea', array(
'label' => 'Description',
'attr' => array(
'class' => 'form-control',
// 'required' => false
)
))
我还检查了数据库以防万一,该字段被创建为一个可能为空的字段,我真的不知道这个问题来自哪里。有人遇到过这个吗?谢谢
解决方案
对于那些遇到同样问题的人,我通过以下方式解决了它:检查数据库是否字段可能为空(不是问题,但稍后会出现)检查注释,查看字段是否设置为可空和 LAST
->add('descriptionActivite', 'textarea', array(
'label' => 'Description',
'required' => false,
'attr' => array(
'class' => 'form-control',
)
))
所需的选项放在'attr'数组()中,当它不应该有时,我的错。
推荐阅读
- redirect - 将 magento 302 默认重定向更改为 301 重定向
- twilio - Twilio 无法播放 .mp3 和 .wav 文件
- assembly - 我不知道这个 MARIE Sim 代码有什么问题
- php - PHP会话在随机用户的随机时间结束
- typescript - 如何将 ThreeJS ES6 原生模块与 Typescript 一起使用?
- struct - 宏的包含文件中使用的结构中的未知初始化程序
- go - MQTT paho - 发布消息失败时没有错误
- azure - Azure WebJobs 从哪里读取配置设置?
- pycharm - PyCharm 可以自动将 Conda 环境导出到 environment.yml 吗?
- php - PHP foreach 中的引用变量有问题