如何控制呈现的一种形式吗

编辑该页面

警告:你浏览的文档欧宝体育电话欧宝娱乐app下载地址Symfony 2.7,不再维护。

这个页面的更新版本Symf欧宝娱乐app下载地址ony 6.2(当前的稳定版本)。

如何控制呈现的一种形式吗

到目前为止,您已经看到了一个完整的呈现形式可以只有一行代码。当然,你通常会需要更多的灵活性在呈现:

  • 嫩枝
  • PHP
1 2 3 4 5 6 7
{# app /资源/视图/ / new.html违约。树枝#}{{form_start(形式)}}{{form_errors(形式)}}{{form_row (form.task)}}{{form_row (form.dueDate)}}{{form_end(形式)}}

你已经知道了form_start ()form_end ()函数,但其他功能做什么?

form_errors(形式)
全球整个形式呈现任何错误(每个字段旁边显示领域的错误)。
form_row (form.dueDate)
显示标签、任何错误和给定的字段的HTML表单小部件(如。dueDate)内,默认情况下,div元素。

大部分的工作是做的form_row ()辅助显示标签,错误和在每个字段的HTML表单小部件div默认的标签。在如何处理形式的主题节中,您将了解如何form_row ()输出可以定制在许多不同的水平。

提示

你可以通过访问你的当前数据形式form.vars.value:

  • 嫩枝
  • PHP
1
{{form.vars.value。任务}}

渲染每个字段

form_row ()助手是伟大的,因为你可以很快呈现每个字段的表单(和标记用于“行”也可以定制)。但由于生活并不总是那么简单,你也可以完全由手工渲染每个字段。后的最终产品使用时是一样的form_row ()助手:

  • 嫩枝
  • PHP
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
{{form_start(形式)}}{{form_errors(形式)}}<div>{{了form_label (form.task)}}{{form_errors (form.task)}}{{form_widget (form.task)}}< /div><div>{{了form_label (form.dueDate)}}{{form_errors (form.dueDate)}}{{form_widget (form.dueDate)}}< /div><div>{{form_widget (form.save)}}< /div>{{form_end(形式)}}

如果字段的自动生成的标签并不十分正确,可以显式地指定:

  • 嫩枝
  • PHP
1
{{了form_label(形式。任务,任务描述)}}

一些字段类型额外的渲染选项,可以传递到小部件。这些选项记录每种类型,但一个共同的选择attr,它允许您修改属性表单元素。以下将增加task_field类来呈现输入文本字段:

  • 嫩枝
  • PHP
1
{{form_widget(形式。任务,{attr”:{‘类’:‘task_field}})}}

如果你需要渲染表单字段“手工”然后你可以访问个人价值观等领域id,的名字标签。例如获得id:

  • 嫩枝
  • PHP
1
{{form.task.vars。id}}

得到的值用于表单字段的名称属性需要使用full_name值:

  • 嫩枝
  • PHP
1
{{form.task.vars。full_name}}

树枝模板函数引用

如果你用树枝,一个完整的参考的形式呈现功能是可用的参考手册。读这篇文章了解可用的助手和可以使用的选项。

这项工作,包括代码示例,许可下Creative Commons冲锋队3.0许可证。
< /article>