0

そのため、Rails で link_to を使用して何ができるかを正確に理解するのに少し苦労しました。私が見つけたものには古いものもあれば、新しいものもあり、私が持っているものとは見た目が大きく異なるものもあります。具体的には、ビューに 2 つのリンクを表示しようとしています。1 つは「加算 1」、もう 1 つは「マイナス 1」です。コントローラーに到達したら、使用されたリンクに基づいて、モデルにコントローラーを追加または削除します。リンクは次のとおりです。

<%= link_to "Add 1", item, method: :put, title: item.name %>
<%= link_to "Minus 1", item, method: :put, title: item.name %>

私のコントローラー(アイテムコントローラー)メソッドは次のとおりです。

def update
    @item = current_user.item.find(params[:id])
    @item.quantity += #+1 or -1 depending on what is passed
    if @item.save
        flash[:success] = "Item updated."
    end
    redirect_to current_user
end

:put を使用して link_to を呼び出しているため、リンクの名前を除いて両方のリンクが同じであるため、どの :put がどちらであるかを区別する方法がよくわかりません。パラメータで特定のアイテムを識別していると思いtitle: item.nameます。item単純にパスで識別されますか? 「:title」を「+1」または「-1」に変更する必要がありますか? これは私を混乱させているので、明確化していただければ幸いです。ドキュメントの「htmlオプション」と「urlオプション」にも気づきましたが、違いを解読できませんでしたか? ありがとう!

4

1 に答える 1