私はajaxを初めて使用しますが、Railsを使用するのは妥当です。ペーパークリップを使用して、基本的な複数のアタッチメントを設定しています。推奨事項has_manyアセットがあります。
推奨事項の編集フォームで、ユーザーがアセットを削除し、フィールドを確認、強調表示、フェードアウトできるようにします。
私が持っているlink_toコードは次のとおりです。
<%= link_to "Delete Attachment", destroy_asset_path(asset.id), :method => :delete, :confirm => "Are you sure?", :remote => true %>
かなり簡単です。次にassets_controller(私のルートに基づく)
def destroy_asset
@asset = Asset.find(params[:id])
@asset.destroy
respond_to do |format|
format.js
end
end
これは機能し、アセットは破棄されます。ログ出力は次のとおりです。
Started DELETE "/asset/11" for 127.0.0.1 at 2012-12-19 10:27:42 -0800
Processing by AssetsController#destroy_asset as JS
Parameters: {"id"=>"11"}
Asset Load (0.2ms) SELECT "assets".* FROM "assets" WHERE "assets"."id" = $1 LIMIT 1 [["id", "11"]]
(0.1ms) BEGIN
[paperclip] Scheduling attachments for deletion.
[AWS S3 200 0.112224 0 retries] head_object(:bucket_name=>"bestofbauer-dev",:key=>"assets/11/original/DaffyDuck.jpg")
SQL (0.2ms) DELETE FROM "assets" WHERE "assets"."id" = $1 [["id", 11]]
[paperclip] Deleting attachments.
[paperclip] deleting /assets/11/original/DaffyDuck.jpg
[AWS S3 204 0.117975 0 retries] delete_object(:bucket_name=>"bestofbauer-dev",:key=>"assets/11/original/DaffyDuck.jpg")
(11.7ms) COMMIT
Rendered assets/destroy_asset.js (0.4ms)
Completed 200 OK in 268ms (Views: 9.8ms | ActiveRecord: 14.1ms)
これがdestroy_asset.jsで試していることです
$("#asset_<%= @asset.id %>").effect('highlight', {color:"#999"}, 3000).remove();
しかし、それはdivを強調したり、フェードアウトしたりしません...何かアイデアはありますか?
前もって感謝します