Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/61.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 按钮标签rails按钮中嵌入的HTML_Ruby On Rails_Ruby On Rails 3_Twitter Bootstrap - Fatal编程技术网

Ruby on rails 按钮标签rails按钮中嵌入的HTML

Ruby on rails 按钮标签rails按钮中嵌入的HTML,ruby-on-rails,ruby-on-rails-3,twitter-bootstrap,Ruby On Rails,Ruby On Rails 3,Twitter Bootstrap,可能重复: 这可能是一个非常简单的问题,但我有以下HTML布局: <button class="btn btn-large btn-inverse"><i class="icon-white icon-shopping-cart"></i> Add to bag</button> 添加到包中 这是一个“添加到购物车”按钮,我将跟随《敏捷Web开发》一书创建购物车。问题是,在按钮标记之间嵌入了HTML,如何让它呈现这样的效果?我试过这个: %

可能重复:

这可能是一个非常简单的问题,但我有以下HTML布局:

<button class="btn btn-large btn-inverse"><i class="icon-white icon-shopping-cart"></i> Add to bag</button> 
添加到包中
这是一个“添加到购物车”按钮,我将跟随《敏捷Web开发》一书创建购物车。问题是,在按钮标记之间嵌入了HTML,如何让它呈现这样的效果?我试过这个:

%= button_to raw('<i class="icon-white icon-shopping-cart"></i> Add to bag'), line_items_path(product_id: product) %>
%=按钮\u至原始('Add to bag'),行\u项目\u路径(产品\u id:产品)%>
但首先它打印的是一个“输入”而不是一个按钮,文本在html中是倾斜的,而不是在开始和结束标记之间

我知道我可以全部手动编写,但我希望知道是否有一种快捷方式可以使用rails标记将HTML输出,主要是因为通过twitter引导,我一直看到这种类型的HTML模式


非常感谢您的帮助。

正如Misha所评论的,它类似于

可以使用content_标记帮助器在rails中编写按钮。但是,它不是一种快捷方式,因为它比原始html需要更长的编写时间

但是,如果您需要经常这样做,您可以编写一个自定义的帮助器方法来按照您想要的方式来做

只需添加到您的应用程序/helpers/application_helper.rb

def my_button_to name, options = {}, html_options = {} # or some variation
  # eg. deal with options hash the way button_to deals with it here?
  content_tag :button, html_options = nil do
    raw name
  end
end

现在,您可以在视图中使用此选项:

<%= my_button_to '<i class="icon-white icon-shopping-cart"></i> Add to bag', {}, :class => "btn btn-large btn-inverse" %>
“btn btn大btn反向”%>

好的,我检查内容标签,并让它:'btn btn large btn inverse')do%>'图标白色图标购物车“/>添加到包中---但现在如何轻松创建表单?这是另一个问题,但您必须将其包装在提交到
行项目路径(产品id:product)的表单中
然后在您的
内容标签中
必须设置
:type=>submit
。您也可以将创建表单添加到帮助器方法中,只需将内容标签包装在
表单中即可。。做结束
表单标签。。做结束
这是一个坏主意,因为Rails已经有了一个助手的按钮,它的工作方式不同。你最好为这个按钮助手使用一个不同的名称。@Misha,好的,更改了名称ok ta,我想我会在内容标记周围使用form_标记包装器,这看起来很简单。谢谢各位。