gpt4 book ai didi

ruby-on-rails - Rails,带有嵌套 HTML 的标签,使用 FormBuilder 和 Devise,带有 Bootstrap 标记

转载 作者:行者123 更新时间:2023-12-03 17:58:11 25 4
gpt4 key购买 nike

我正在研究 Rails 3.1 应用程序的前端部分。我们使用 Twitter Bootstrap 作为 CSS 框架,使用 Devise 作为身份验证管理器,使用 I18n gem 进行本地化。

这是带有标签的复选框的设计语法

<%= f.label :remember_me %>
<%= f.check_box :remember_me %>

这当然是生成的 HTML
<label for="user_remember_me">Ricordati di me</label>
<input name="user[remember_me]" type="hidden" value="0">
<input id="user_remember_me" name="user[remember_me]" type="checkbox" value="1">

由于 Bootstrap 为标签添加了这条规则 display: block ,标签和复选框不在同一行。要在同一行上,我需要这样的 HTML 输出
<label for="user_remember_me">
Ricordati di me
<input name="user[remember_me]" type="hidden" value="0">
<input id="user_remember_me" name="user[remember_me]" type="checkbox" value="1">
</label>

forms markup documentation所示

你会注意到标签文本是意大利语的,为 Devised 提供本地化的团队成员努力寻找如何做到这一点,我不想强​​迫他再次努力引入新的本地化字符串。

我知道 FormBuidler label方法接受一个 block 作为参数,所以我可以做
<% f.label :remeber_me do %>
<%= f.check_box :remember_me %>
<% end %>

但这会产生一个没有标签的 HTML 输出! o.O
具体来说,这是我得到的:
<input name="user[remember_me]" type="hidden" value="0">
<input id="user_remember_me" name="user[remember_me]" type="checkbox" value="1">

我试图查看源代码, f.label method调用 label method ,但我只能看到,如果有 block ,则不会打印任何文本,并且标签和 block 将由 label_tag 呈现的 template_object .

在潜入源代码挖掘和彻夜未眠之前,我决定稍等片刻,向 StackOverflow 的生命安全社区寻求帮助。

我错过了什么吗?我调用 f.label以错误的方式阻止?是否缺少某些参数?

谢谢!!

最佳答案

不知道你有没有搞定这个...

在 Rails 3.2.6 上运行这是我必须做的:

<%= f.label :remember_me do %>
<%= f.check_box :remember_me %>
Remember Me?
<% end %>

我希望这对您有所帮助,因为我来这里是为了寻找完全相同的问题的答案并且找不到它,除非通过反复试验。

关于ruby-on-rails - Rails,带有嵌套 HTML 的标签,使用 FormBuilder 和 Devise,带有 Bootstrap 标记,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9676314/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com