当然,问题是Ruby 符号不喜欢连字符.所以这样的事情显然行不通:

content_tag(:div, "Some Text", :id => "foo", :data-data_attr => some_variable)

一种 Select 是使用字符串而不是符号:

content_tag(:div, "Some Text", :id => "foo", 'data-data_attr' => some_variable)

或者我可以插入:

"<div id='foo' data-data_attr='#{some_variable}'>Some Text</div>".html_safe

我有点喜欢后者,但两个看起来都有点恶心.有谁知道更好的办法吗?

推荐答案

Rails 3.1附带内置帮助器:

http://api.rubyonrails.org/classes/ActionView/Helpers/TagHelper.html#method-i-tag

例如.,

tag("div", :data => {:name => 'Stephen', :city_state => %w(Chicago IL)})
# => <div data-name="Stephen" data-city-state="[&quot;Chicago&quot;,&quot;IL&quot;]" />

Html相关问答推荐

使用tauri构建的Next.js应用程序不显示我的404页面

如何在不影响子列表的情况下在HTML(OL Li)上同时加数字和列表?

页脚与主要内容重叠

创建带有弯曲边框的水平时间线

在网页上的 Select 器中显示选项时出现问题:未在GO模板中传递循环{{range}}的数据

我无法从带Angular 的Bootstrap 5中的表单中获取数据

响应网格,响应调整大小以适应父div,保留父div S自己的响应高度

使用`<;use>;`与`<;img>;`时呈现的SVG大小不同

顶部有文字的图像的悬停效果

如何防止弹性项目溢出容器?

:invalid Select 器的惰性判断

为什么我的 div 元素没有形成一个圆形时钟?

为什么在使用src与srcdoc时 iframe 内容高度呈现不同?

如何为某些行具有 rowspan 的表的每个奇数行着色

父背景仅在子元素中可见

如何在 svelte 中对静态 html 文件使用href=

无法从社交栏中 Select 选项

为什么将 p 元素的垂直边距设置为 1 px 会出现滚动条?

绝对定位的 div 与另一个静态定位的 div 的边距顶部一起移动

左右图像,响应页面大小并居中