Django通过链接对模型执行操作

时间:2013-08-11 03:11:19

标签: django url

我想通过网站上的按钮删除记录。我该怎么办?

到目前为止,我所做的每一个“按钮”或动作都与表单有关,这些表单是通过“post”处理的。 URL将保持不变,只是如果它是内容和操作不同的获取或帖子。

但是,如果我想删除某些内容,我真的不认为我想创建一个像“/ delete_record”这样的网址。此外,不要真的认为每个按钮都需要成为一个表格....说有10条记录,我可以删除其中任何一个,这就像10个表格?

也许这是我用Javascript或其他东西做的事情?

1 个答案:

答案 0 :(得分:3)

您可以为要删除的对象创建一个带有标识符的URL,并在视图中删除该对象。

假设您要删除Record类型的对象。创建一个这样的网址

url(r'^record/delete/(?P<id>)/$', 'delete_record_view', name='delete-record-url')

像这样的视图

def delete_record_view(request, id):
    obj = get_object_or_404(Record, pk=id)
    # some validation here to make sure the user clicking the link can delete the object
    obj.delete()

在模板中

<a href="{% url 'record-delete-link' record_object.id %}">Delete</a>