我在视图中有以下代码:
<% if @user.marine? %>
<div>
<%= link_to("Close account".html_safe, deactivate_path(@user), method: :patch,
html_options = { role: "button", class: "button-small", data: "Are you certain?"
}) %>
</div>
<% end %>
在开发服务器上加载页面时,会在下面生成错误,指的是<% end %>
行。
语法错误,意外&#39;)&#39;,expecting =&gt; }) ); @ output_buffer.safe_append =
语法错误,意外 keyword_end,期待&#39;)&#39; &#39; .freeze;端
任何人都知道链接代码中的错误是什么以及我应该如何调整它?
我认为这与data: "Are you certain?"
部分有关。这应该会弹出一条确认消息。我也试过了confirm: "Are you certain?"
,但没有区别。
更新:除非我删除整个html_options
部分,否则我无法使链接生效。仅删除data: "Are you certain?"
部分是不够的。
答案 0 :(得分:3)
这是一个哈希键,应该有:
或=>
而不是=
。请尝试以下操作,将所有html_options
分组到一个哈希中,如下所示:
<%= link_to 'Close account'.html_safe,
deactivate_path(@user),
{ method: :patch, role: 'button', class: 'button-small', data: { confirm: 'Are you certain?'} } %>