在 Rails 中, label 和 label_tag 似乎工作相同。rails 渲染它们的方式有什么内部差异吗?哪个更好用?
问问题
423 次
2 回答
3
f.label
当您在使用创建的表单对象中form_for(...) do |f|
并想要引用模型属性时使用。如果您的应用程序是 i18n-ed,Rails 将使用翻译来显示属性名称。
label_tag
当您不在表单对象中时使用。(或者您在表单对象中,但想为非模型属性创建一个虚拟标签。)
所有的表单输入都有这两种变体,带和不带_tag
后缀,比如select
andselect_tag
等。
于 2013-10-31T10:54:55.363 回答
0
我假设您的意思只是标签而不是 f.label。我在仅使用 label 和 label_tag 之间看到的区别在于,您不能在仅使用 label 时设置自定义标签,即,如果您
label :name, "My Name:
在视图中使用,它不会呈现 My Name,而只会呈现 Name。但是如果你使用
label_tag :name, "My Name:"
它将在显示屏上呈现我的名字。
于 2017-04-25T10:10:19.943 回答