Я пытаюсь отобразить всплывающее окно при нажатии кнопки, но не могу добраться до нее, поскольку всегда получаю сообщение об ошибке метода Ajax.
Мое всплывающее окно должно выглядеть следующим образом:
https://image.noelshack.com/fichiers/2019/26/4/1561630568-59639851-4278bc80-9154-11e9-965a-d691ee7777b1.png
Я попытался загрузить всплывающее окно с содержимым уже работающего всплывающего окна, и оно работало.Я могу отображать выбранное изображение через мой веб-сайт, но не из всплывающего окна.
Я полагаю, мой синтаксис модели хорош, так как я могу отобразить изображение, выбранное пользователем, поэтому моя проблема возникла из моего контроллерасинтаксис.
Методы My Controller:
def pbbackground
progress_board = ProgressBoard.find(params[:id])
if params[:type] == "cover_image"
result = progress_board.cover_image.save
progress_board.save(validate: false)
end
end
Параметры моей модели для добавления cover_image
:
has_attached_file :cover_image,
:styles => { square: "200x200>", small: "400x400>", :large => "640x640>", :thumbnail => "400x400#",to_add: "362x270>", you_might_like: "260x160>" }
validates_attachment_content_type :cover_image, :content_type => ['image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/bmp']
def assign_cover_image
if ci = params[:progress_board][:cover_image]
cover_image = ci
end
cover_image = File.open(cover_image_path)
self.cover_image = cover_image
self.save
end
Мой рабочий Ajax-метод:
function loadProgressForm(resource, id){
$(".form_loader").show();
if(resource == "new"){
url = "/progress_boards/new";
popup_name = "Make A Progress Board";
} else if (resource == "edit"){
url = "/progress_boards/" + id + "/edit";
popup_name = "Add/Remove Metrics";
} else if (resource == "pbbackground"){
url = "/progress_boards/" + id + "/pbbackground";
popup_name = "Add A Picture";
}
$.ajax({
url: url,
success: function(response, data){
$("#progress_board_form").html(response.html);
$("#progress_board_form").find('.modal-title').text(popup_name);
$(".form_loader").hide();
},
error: function(response, data){
alert("Error loading project form")
$(".form_loader").hide();
}
})
}