如何从数组中删除方括号和逗号
我正在为喜欢创建工具提示。下面是一个images
这我传递给提示:如何从数组中删除方括号和逗号
images = bonus.like_user_avatars.map {|src| "<img src='#{src}'>" }
bonus.like_user_avatar
已经是很喜欢用户的化身的集合。 一切工作正常,但它看起来像这样:
这是提示代码:
span.has-tip data-tooltip="" data-template="<div class='tooltip'>#{images}</div>"Like
我需要删除的方括号和逗号,我只是想只在化身提示。我该怎么做?
只是join
值
images.join # <img src='a.jpg'><img src='b.jpg'><img src='c.jpg'>
只是替换为以下代码:
span.has-tip data-tooltip="" data-template="<div class='tooltip'>#{images.join}</div>"Like
idk如何,但它的工作原理,非常感谢:) –
你正在传递数组,因为它是 –
这就是为什么逗号,引号和括号后'加入'它将删除这些东西 –
两个possiblities:
- 你可能需要告诉Rails你的HTML是安全的。在渲染时在字符串上调用
.html_safe
。 -
我宁愿保存
src
属性在bonus.like_user_avatars
中,然后将它们添加到通过rails方法呈现的html中。例如,在您的视图中(假设您使用的是前一种语法的苗条)。- bonus.like_user_avatars.each do |src| = image_tag src, #any options you want here
注意:http://apidock.com/rails/ActionView/Helpers/AssetTagHelper/image_tag将有助于与image_tag
方法
与上下文相关的Ah并不重要。 @Deepak这是一个伟大的方式:) –
有map
和each
之间的差异。当你想改变原来的列表(它不发生变异)
2.3.0 :001 > array = [1,2,3]
=> [1, 2, 3]
2.3.0 :002 > array.map {|v| v+1}
=> [2, 3, 4]
2.3.0 :003 > array.each {|v| v+1}
=> [1, 2, 3]
map
使用。当您使用map
时,您只是使用新值创建一个新列表。当你想要产生某种效果时,应该使用each
,在这种情况下,你正在输出一些东西。
在你的情况,你将要在阵列中使用的bonus.like_user_avatars.each
可以请你告诉满偏或查看 –
@Deepak请参阅upd –
使用“编辑”或“更新”标签并不是必需的或者特别理想的在文中。相反,只需简单地将这种变化结合起来,就好像它一直存在一样,所以它变得有意义并且可读。如果需要,我们可以查看修订历史记录。 –