2

私は Rails アプリを持っていて、少し勢いを増していますが、対処しなければならない深刻な頭痛の種があります。これは基本的な種類のアセット マネージャー アプリケーションです。ユーザーは写真、.pdf、ビデオなどをアップロードし、システムによってそのアセットの表示方法を管理できます。

index.html.erb については、かなり標準的な Rails ビュー (Rails によって生成されるもの) から始めました。各アセットのサムネイルをレンダリングするパーシャルと、次のようなものがあります。

<div id="preview">  </div>

私が望むのは、サムネイルをクリックできるようにすることです(簡単です)が、ユーザーがそのボタンを押すと、divの内容は基本的にはedit.html.erbで埋められますが、必要だと思いますパーシャルとして行われます。私はすでにこれをまっすぐなjavascriptで管理しています。

私は新しい「Agile Development on Rails」本の出版前バージョンにアクセスできます。これは出版社から誰でも入手できますが、AJAX に関する章は非常に最小限であり、これらのことについて私よりも多くの経験があることを前提としています。 JavaScript と Rails への私の最初の進出。

更新:「質問は何ですか」「答え」に応えて、かなり明確だと思いましたが:

サムネイルをクリックして編集フォームを div にロードするには、サムネイルのパーシャルに何を入れる必要がありますか?

4

1 に答える 1

6

link_to_remoteを使用する必要があります:

<%=    link_to_remote image_tag('whatever.jpg'), 
       {:controller => 'something', :action => 'replace_thumbnail', :id => @thumbnail.id}, 
       :update => 'preview' %>

コントローラでは、次のアクションを実行する必要があります。

def replace_thumbnail
  image = Image.find(params[:id])
  render :partial => 'edit', :object => image, :layout => false
end

パーシャルの名前が「_edit.html.erb」であることを確認してください

于 2008-10-24T17:39:44.410 に答える