Функциональность в порядке, теперь мне нужно работать с ajax, как отправить форму без загрузки страницы.отправить/получить ID-код контроллера
Это моя работа ниже:
вид:
<%= form_for :accept, url: accept_path(:id => applicants.id), action: :accept, method: :put do |f| %>
<%= f.hidden_field :accept, :value => '1' %>
<div id="acc" class="btn btn-success">Accept</div>
<% end %>
Контроллер:
def accept
@accpt = Apply.find(params[:id])
if @accpt.update_attributes(accept_params)
flash[:success] = "Accepted"
#redirect_to home_path
else
render 'accept'
end
end
Ajax:
script type="text/javascript">
$(document).on("click", '#acc', function() {
$.ajax({
url: "accept",
type: "PUT",
dataType: "json",
data: { id: $(this).id },
complete: function() {},
success: function(data, textStatus, xhr) {
editor.setValue(data.file_content)
},
error: function() {
alert("Ajax error!")
}
});
});
</script>
маршруты
put 'accept/:id' => 'applicants#accept', as: :accept
Теперь отображается ошибка ajax.
Как я могу найти решение?
Какая ошибка? – RichardAE
Ошибка: 'Не удалось найти Применить с 'id' = id', но без ajax работать должным образом, проблема в загрузке страницы –
добавить': remote => true' в форме –