在我的项目中,我必须添加从用户列表中删除朋友的功能。单击“删除朋友”链接时,将加载以下视图(发送了friends.id):
def delete_friend(request, id):
friend = get_object_or_404(Friend, id=id)
friend.delete()
return HttpResponseRedirect(reverse('user_profile',))
现在我想添加一个弹出窗口(当用户点击删除链接时出现)询问用户是否确定要执行该操作。我应该从哪里开始,怎么做?我猜,使用jquery我应该在点击链接后创建一个弹出窗口。然后可能会发生一些Ajax魔法。但是如何处理呢?我有jQ的中级知识,但我之前从未使用过ajax,而且我没有找到任何有关django-ajax的有用教程。
更新:我确定这里有错误,但这就是我的想法:
- 点击'删除朋友'后,jq打开一个弹出窗口
- 如果在点击'确定'按钮被点击,我们运行一个脚本(我认为需要以某种方式将我的朋友的.id转移到此功能):
$(".friend_remove_ok").click(
function(){
// let's say id is my friend.id
$.ajax({
type: "GET",
url: "/user/delete_friend/"+id+"/",
dataType: "json",
success: function(data){
$("#friend_"+id).fadeOut(300, function() { $("#friend_"+_id).remove() });
}
});
}
);
- 然后它运行我们的delete_friend视图
这有什么用,或者我的想法完全错了?
答案 0 :(得分:2)
主要思想是点击删除按钮会触发打开确认对话框的javascript方法。 一旦用户确认您可以做几件事:
还建议不应在GET请求上执行修改模型的操作,这意味着您应该使用POST或DELETE调用删除URL