symfony于11月12日介绍8.2分支的form组件改进,包含boundstype范围字段、嵌套表单步骤、整表校验后的post_validate事件,以及选择项帮助和排序配置。官方发布页目前仍标记under development,要求php 8.4及以上;这些能力应按8.2开发分支范围理解。

Symfony官方11月12日表单改进公告
范围和多步骤结构有专门入口
BoundsType把同一种内部字段组合成from和to两个边界,可用于价格或日期范围,并通过compare检查先后关系。表单Flow则允许步骤包含子步骤,纯分组节点可用createStepGroup创建;跳过父步骤时也会跳过其子步骤。
校验完成后再处理字段级收尾
新事件POST_VALIDATE在整棵表单树完成校验后分发,复用字段类型因此能够读取根表单的最终状态。应用层正常提交处理仍应在控制器调用handleRequest后判断isValid,不必把业务代码全部迁入事件监听器。

Symfony 8.2官方页面标明开发中及PHP 8.4要求
数组输入和选择项展示分别增强
allow_array_submission允许指定字段先运行PRE_SUBMIT监听器,把输入数组转换成该字段能接受的数据;默认值保持false,监听器执行后仍为数组则继续拒绝。choice_help可给展开的单选或多选项分别显示帮助,sort_choices则依赖intl扩展按当前区域规则排序翻译后的标签。
这些变化服务于不同表单需求。开发版文档描述的是待发布版本接口,不能据此认定当前稳定分支已经具备全部选项,测试时需同时核对组件版本与实际表单主题。


















