你好我正在阅读关于ruby on rails“Agile Web Development with Rails 4”的指南,我正在我的计算机上运行Ruby 1.9.3
在interxtion 9.3中我试图创建一个按钮来创建一个带有标签button_to的LineItem
<%= button_to 'Add to Cart', line_item_path(product_id: product) %>
但是当我尝试在localhost中执行代码时,按钮不会出现。
Ruby 1.9.3中是否存在此标记的代码变体?
答案 0 :(得分:0)
您的语法似乎有问题:
<%= button_to raw("<i class=\"icon-search icon-white\">Add To Cart</i>"),
line_items_path(product_id: product),
class: "btn btn-success" %>
将按钮的标签用双引号括起来,转义i标签中的双引号,最后将所有内容包装到raw()调用中,以确保正确显示HTML。
或者你可以使用html_safe:
<%= button_to "<i class=\"icon-search icon-white\">Add To Cart</i>".html_safe,
line_items_path(product_id: product),
class: "btn btn-success" %>
答案 1 :(得分:0)
除非您绝对需要button_to帮助程序提供的表单创建功能,否则您可能需要使用link_to或button_tag,这两者都需要块。
<%=button_tag class: "btn btn-success" do %>
<i class="icon-search icon-white">Add to Cart </i>
<%end%>
<%=link_to products_path, class: "btn btn-success" do %>
<i class="icon-search icon-white">Add to Cart </i>
<%end%>
希望有所帮助。