在我的客户索引视图中,如果单击“删除客户”按钮,则会在我的客户控制器删除方法中执行以下操作。
Customers_controller.rb
类CustomersController< ApplicationController的 。
"data:{\"UserID\":105,\"Date\":\"2016-03-11T04:20:24.1854996+02:00\"}\n\n"
基于我的条件,如果它的真实意味着客户无法被删除,并且该消息将显示在客户索引页面本身的模态弹出窗口中,如何实现呢?
答案 0 :(得分:0)
我建议您在单击按钮时发出 ajax 请求,并将其重定向到您的销毁操作。然后,在控制器中执行您的逻辑并简单地返回true / false(或您需要的任何其他内容)并在JS回调中使用它。
例如:
在你的view.js
中$(document).ready(function(){
$("#delete_button").click(function(e){
e.preventDefault();
$.ajax({
type: "POST",
url: "/URL/TO/CONTROLLER",
data: { id: someID},
success: function(result){
if(result == true) {
// Do something
} else {
window.location.replace(result);
}
}});
});
});
在您的控制器中:
def destroy
if Customerarticle.where(author_id: params[:id]).count > 0
return true
else
Customer.find(params[:id]).destroy
flash[:success] = "Customer deleted"
return customers_path
end
end
这应该可以正常工作。请记住,它肯定需要一些重新工作和调整:)