0

Railscasts エピソード #381 に従って、Rails 3 のサーバーにファイルをアップロードするための jQuery ファイル アップロードを設定しています。

jQuery File Upload + Paperclipを使用して完全に機能させました。

正常に動作します。しかし、ページをリロードせずにアップロードしたばかりの画像を表示する方法がよくわかりません。

RailsCastの作者曰く「コントローラーを変えるだけでこんな感じに」

  def create
    @picture = Picture.create(params[:picture])
  end

(やった)

「そして、次のコードで create.js.erb テンプレートを作成します」

<% if @picture.new_record? %>
    alert("Failed to upload picture");
<% else %>
    $("body").append("<% j render(@picture) %>");
<% end %>

(どのフォルダーに配置する必要があるのか​​ わかりません。 app/views/pictures/ に試してみましたが、トリガーされていません)。

質問は、新しい画像が送信されたときに「create.js.erb」をトリガーするにはどうすればよいかということだと思います。

どうも。

4

1 に答える 1

0

次のように解決しました:

<% if @picture.new_record? %>
    alert("Failed to upload picture");
<% else %>
    $("table").append('<tr><td><%= image_tag @picture.file.url(:small) %></td></tr>');
<% end %>
于 2012-12-03T11:22:51.237 に答える