filedrop.jsを使用して画像をアップロードしています。application.jsファイルのコードは次のようになります:-
$(".droparea").each(function(event){
var game_id = $(this).attr('id')
$(this).filedrop({
maxfilezsize: 5,
maxfiles: 1,
dataType: "script",
paraname :"custom_game[file]"
url: "/game_plans/'+$(".dropbox").attr("rel")+'/games/'+game_id+/upload_file.js"
})
}
この部分は正常に機能しています。適切なパラメータを使用して適切なアクションを実行しています。
def upload_file
# NOTE Upload_file action has been explicity written for the file upload using drag and drop
@custom_game = CustomGame.find_or_initialize_by_id(params[:id])
@game_plan = GamePlan.find(params[:game_plan_id])
@custom_game.update_attributes(params[:custom_game])
respond_to do |format|
format.js
end
end
upload_file.js.erb:
$("#<%= @custom_game%>_file").html(<%= @custom_game.file%>);
しかし、それぞれのアクション、つまりupload_file.js.erbを考慮すると、javascriptコマンドを実行することはできませんが、rubyコマンドは正しく機能しています。また、ログには、パーシャルが正常にレンダリングされたことが示されています。
私のログは次のことを示しています:-
(101.8ms) COMMIT
Rendered activities/upload_file.js.erb (0.6ms)
Completed 200 OK in 379ms (Views: 10.8ms | ActiveRecord: 106.9ms)
どこで間違いを犯しているのかわかりません。upload_file.js.erbでjqueryコマンドは実行されていませんが、rubyコマンドは正しく機能しています。