我在django的一个模板中使用了一个jquery对话框作为删除操作的确认,但问题是当我将数据发布到视图时,我在调试html代码时获得了“invalid regular expression flag d
”问题出在这一行:
url : /certificates/delete/
这是我的代码:
模板:
function openDialog(id){
$( "#dialog-confirm" ).dialog({
resizable: true,
height:140,
modal: true,
buttons: {
"Delete This Entry": function() {
$.ajax({
type: "POST",
url: {% url delete_id %},
data: {'id': id},
success: function() {
$( this ).dialog( "close" );
}
});
$( this ).dialog( "close" );
},
Cancel: function() {
$( this ).dialog( "close" );
}
}
});
}
观点:
def delete_id(request):
id = request.POST.get('id', None)
URL:
url(r'^delete/', views.delete_id,name='delete_id')
答案 0 :(得分:1)
您正尝试在服务器端生成删除网址,但ID在客户端处理。
而不是拥有" id" url的参数部分,考虑将其移动到POST数据:
def delete_id(request):
id = request.POST.get("id", None)
if id is not None:
print 'delete'
url(r'^delete/', views.delete_id,name='delete_id')
应用这些更改将使您的代码正常工作。
答案 1 :(得分:0)
我认为您需要更正这样的网址声明:
url(r'^delete/', entries.views.delete_id,name='delete_id')
在你的视图中写下这个
id = request.POST.get('id', None)
错误消息还表明它无法映射参数。