大佬教程收集整理的这篇文章主要介绍了ruby-on-rails – 我可以在Rails中使用link_to创建一个链接数组吗?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
<%= links.map{|wl| link_to wl.title,wl.url}.join(',') %>
令我吃惊的是,这里显示了我想创建的链接的HTML代码的逗号分隔列表;也就是说,它正在采取所有的尖括号和编码它们.为了确保在高阶函数中没有任何有趣的东西,我尝试了一个更为迫切的版本:
<% a = [] %> <% links.each do |wl| %> <% a << link_to(wl.title,wl.url) %> <% end %> <%= a.join(',') %>
当然,同样的结果.但我不认为我是滥用link_to,因为如果我修改它
<% links.each do |wl| %> <%= link_to(wl.title,wl.url) %>,<% end %>
那么它实际上创建了链接.这几乎正是我想要的,除了在最后一个之后有一个额外的逗号.在link_to的引擎盖下是否有一些魔法,这使得它根据其输出位置的不同而有所不同?有没有办法绕过这个魔法?连接语义将正是我想要的,我可以明确地知道如何滚动自己的(使用each_index,我猜),但它似乎是一个非常繁重和非Ruby的解决方案,一定是一个常见的问题.
在您的主视图文件中,您当前将循环更改为:
<%= render partial: 'links/link',collection: links,spacer_template: 'shared/comma' %>
然后创建一个部分链接/ _link.html.erb
<%= link_to link.title,link.url %>
然后创建一个部分共享/ _comma.html.erb
,
关于这种方法的好处是,如果您的链接内容实际上是安全的,并且如果您选择列出或创建样式,那么您不用担心,只需更改一个或两个模板就可以简单.例如,如果不是逗号,那么您决定要垂直使用< br>而不是在你的间隔模板中.
以上是大佬教程为你收集整理的ruby-on-rails – 我可以在Rails中使用link_to创建一个链接数组吗?全部内容,希望文章能够帮你解决ruby-on-rails – 我可以在Rails中使用link_to创建一个链接数组吗?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。