リモートでリンクされている編集操作が必要なディスカッションコントローラがあり、AJAX呼び出しでページの一部をレンダリングすることができますJquery&Rails 3:Link_toリモート操作を編集する
私の問題は、コントローラとすべてのファイル(必要と思われる)にアクションを設定していることです。しかし、ディスカッションの表示ページのリンクは、ブラウザをコントローラのアクションとそれに対応するedit.js.erbファイルにリンクするのではなく、新しいページを表示することができます。
ディスカッションコントローラのコードは次のとおりです。
私は今のところ、ちょうど警告で満たされている(js.erbファイルedit.js.erbを呼ぶよう望んでいるだろうclass DiscussionsController < ApplicationController
include DiscussionsHelper
def create
...
end
def show
...
end
def edit
respond_to do | format |
format.js
end
end
end
- これは適切を通じてリンクたら私はjqueryのコードでそれを埋めるつもり部分的な編集をレンダリングするために、私は希望:私はショーのページに入れている
alert("hello");
のlink_toすることです:私が言ったように
<div class="discussion_overview">
<h1><%= @discussion.title %></h1>
<div class="edit_disc">
<%= link_to "Edit", :url => {:action => "edit", :id => @discussion}, :remote => true %>
</div><br>
が、私はこれはedit.jsを呼ぶだろうと思いました.erbファイルを作成します。適切なコード。ただし、link_toリンクではなく:
http://localhost:3000/discussions/54?remote=true&url[action]=edit&url[id]=54
私が間違っていたことについてのアイデアはありますか? URLをドロップ
UPDATE => {}になるために:
http://localhost:3000/discussions/54/edit?remote=true
ではなくにAJAX呼び出しを行う:
<%= link_to "Edit", :action => "edit", :id => @discussion, :remote => true %>
ではなく、単にへのリダイレクトを変更し、解決策を解決しません編集アクション..
あなたのご意見ありがとうございます。私はこれが当てはまるとは思わない - 私は:url => {}を削除したが、ここではリダイレクトが持続する。この場合、http:// localhost:3000/discussions/54/edit?remote = true、isnどんな考え? – jay
Rails 3を使用していますか? – tybro0103
はい - Rails 3.0.9 – jay