84

ユーザーが戻るボタンをクリックしたときのルビーコードのブロックを作成しようとしています。「/projects/ 11 / steps / 4」:Stringの「undefinedmethod`stringify_keys'」というエラーが発生します。コードは、doとendを削除すると機能します。link_toにdoを追加するにはどうすればよいですか?

    <%= link_to 'Back', project_step_path(@project, @project.steps.count-1), :class => "btn btn-small" do %>

    <% end %>
4

2 に答える 2

208

ブロック形式を使用している場合、link_toテキストコンテンツを含めることはできません(ブロックはテキストコンテンツです)。これを行う必要があります:

<%= link_to project_step_path(@project, @project.steps.count-1), :class => "btn btn-small" do %>
  Back
<% end %>

通常、これは、リンクのコンテンツとして画像やその他のタグを使用する場合に使用されます。純粋に表示目的です。ブロックはJavaScriptのような機能を提供しないので、追加の表示動作がここで探しているものであることを確認してください:)

于 2013-02-20T17:51:35.063 に答える
18

ブロックを渡す場合は、リンク名を渡さないでください。する必要があります:

<%= link_to project_step_path(@project, @project.steps.count-1), :class => "btn btn-small" do %>
  Back
<% end %>
于 2013-02-20T17:53:55.597 に答える