我有 views.py
这样的文件
def delete_post(request):
id = request.GET.get('id')
post = models.Post.objects.get(id=id)
return render(request, 'system/ajax/delete.html', {'post': post})
class PostDelete(DeleteView):
model = models.Post
success_url = reverse_lazy("system:post_list")
我的 urls.py
文件如下:
url(r'^post-list/$',views.PostList.as_view(),name='post_list'),
url(r'^post-delete/(?P<pk>\d+)/$',views.PostDelete.as_view(),name='post_delete'),
url(r'^ajax/delete/$',views.delete_data,name='ajax_delete_data'),
我的 delete.html
看起来像这样:
<form method="post" action="{% url 'delete_post' pk=data.pk %}">
{% csrf_token %}
<input type="submit" class="btn btn-danger" value="delete">
</form>
我的 post_list.html
如下:
<button data-id="{{post.id}}" data-url="{% url 'system:ajax_delete_data' %}" type="button" class="delete-post" >
delete
</button>
<script>
$(document).on('click','.delete-post',function(){
var url = $(this).data('url');
var id = $(this).data('id');
$.ajax({
url:url,
data:{
'id':id,
},
success:function(data){
$('#delete-data').html(data);
},
});
});
</script>
在我的脚本中它只能删除一个名为post
的数据模型,我想让它变为动态,所以我不需要编写很多函数。
在此
post = models.Post.objects.get(id=id) <---
有任何建议吗?