1
<li class="li_spacing"><%= button_to "Website", @restaurant.website, :target => '_blank', :class => "btn btn-primary" %></li>

一切正常,除了:target => '_blank'. 为什么这不会在新页面中呈现链接?

4

3 回答 3

3

从更改button_tolink_to

<%= link_to "Website", @restaurant.website, target: "_blank" %>

button_to在表单中生成,如果您仍想使用它:

button_to "Website", @restaurant.website, class: 'btn btn-primary', form: {target: '_blank'}
于 2016-08-06T01:03:32.123 回答
2

在新窗口中打开链接的常用方法是target="_blank"在链接标签中添加一个。

出于安全原因,不应再这样做。建议rel=noreferrer改用:

link_to 'title', url, rel: 'noreferrer'

或作为按钮:

button_to 'title', url, form: { rel: 'noreferrer' } 
于 2016-08-06T05:55:50.673 回答
1

如果您使用的是button_tohelper,那么它会由 rails 自动包装在一个表单中。所以你可以做的是将属性传递target: '_blank'为:

button_to "Website", @restaurant.website, class: 'btn btn-primary', form: {target: '_blank'}
于 2016-08-08T14:56:40.840 回答