<li class="li_spacing"><%= button_to "Website", @restaurant.website, :target => '_blank', :class => "btn btn-primary" %></li>
除:target => '_blank'
外,其他一切正常。为什么这不在新页面中呈现链接?
从button_to
更改为link_to
:
<%= link_to "Website", @restaurant.website, target: "_blank" %>
button_to
是在表单中生成的,如果您仍然希望使用它:
button_to "Website", @restaurant.website, class: 'btn btn-primary', form: {target: '_blank'}
在新窗口中打开链接的常见方法是向链接标记添加target="_blank"
。
但由于安全原因,不应再执行操作。建议使用rel=noreferrer
:
link_to 'title', url, rel: 'noreferrer'
或者作为按钮:
button_to 'title', url, form: { rel: 'noreferrer' }
如果使用button_to
助手,则它会自动被rails包装在表单中。因此,您可以将属性target: '_blank'
传递为:
button_to "Website", @restaurant.website, class: 'btn btn-primary', form: {target: '_blank'}