1

Railsを学んでいて、メモを処理する簡単なアプリを書いています。ノートには整数の値「スコア」があります。ユーザーに「投票する」という名前のボタンと「投票する」という名前のボタンを押してもらいたいのですが、投票するとスコア=スコア+1になります。

notes_controller.rbには、次のようなメソッド'upvote'があります。

def upvote
  @note = Note.find params[:id]

  @note.score = @note.score +1
end

scoreしかし、POST(またはUPDATE?)を/ notes /:id / upvoteに送信すると、メモが変更されるようにルーティングする方法がわかりません。

4

1 に答える 1

2

ルートファイル内:

resources :notes do
  member do
    put :upvote
  end
end

upvote_note_pathこれにより、を指す名前付きルートが作成され/notes/:id/upvote、NotesControllerの賛成アクションが実行されます。

于 2012-10-20T15:46:44.277 に答える