1

投稿リクエストを行う like_to メソッドに問題があります。

Rails 4th を使用したアジャイル Web 開発という本に従っており、ユーザーが画像をクリックした場合に投稿リクエストを作成しようとしています。私のコードは次のとおりです

<%= link_to(image_tag(product.image_url), line_items_path(:product_id => product), :method => :post) %>

一部の人々は、JS タグの設定を行う必要があると言いました。

<%= javascript_include_tag :defaults %>

やりましたが、リンクはまだインデックスページに移動しています。

また、シンボルを「作成」または「投稿」に変更しましたが、それでも機能しません。

この問題を解決する方法を知っている人はいますか?私はこれに長い間立ち往生しており、抜け道を見つけることができません。事前にどうもありがとうございました。

4

1 に答える 1

0

それは紛らわしいです、あなたは物事を一つずつ取る必要があります.

まず、なぜこのタグを追加するのか理解できません<%= javascript_include_tag :defaults %>。通常、layout/application.html.rb ファイルには、次のような行が必要です<%= javascript_include_tag :application %>。この行には JS マニフェストが含まれており、既定の構成ではこれで十分です。アセット パイプラインと JS マニフェストの詳細については、Rails ガイドを参照してください (以下のリンクを参照)。

次に、リンクについて、代わりに次の構文をお勧めします。

<%= link_to(line_items_path(product), :method => :post) do %>
  <%= image_tag(product.image_url) %>
<% end %>

ご覧のとおりimage_tag、ブロック内に移動したので、はるかに読みやすくなっています。またline_items_path、製品レコードを直接渡すことでも機能するはずです (ハッシュは必要ありません。Rails が魔法をかけてくれます)。

試してみてください。そのままではうまくいかない場合は、質問を編集して route.eb ファイルを含めてください。

ガイド Rails 4: http://guides.rubyonrails.org/

ガイドレール 3: http://guides.rubyonrails.org/v3.2.13/

于 2013-07-19T00:36:12.210 に答える