gpt4 book ai didi

html - Django - 如何使用 View 删除对象

转载 作者:太空狗 更新时间:2023-10-29 14:53:31 25 4
gpt4 key购买 nike

我有类人

class People (models.Model):
first_name = models.CharField(max_length = 50)
last_name = models.CharField(max_length = 50)
email = models.EmailField(blank = True)
grade = models.CharField(max_length = 2)

def __unicode__(self):
return '%s %s' % (self.first_name, self.last_name)

我有删除 View

def delete(request):
query = People.objects.get(pk=id)
query.delete()
return HttpResponse("Deleted!")

我有html模板代码

{% for person in people_list %}
<TR ALIGN="CENTER">
<td>{{ person.first_name }}</td>
<td>{{ person.last_name }}</td>
<td>{{ person.email }}</td>
<td>{{ person.grade }}</td>
<td><form action="/modify.html">
<input type="submit" value="Modify">
</form></td>
<td><form action="/delete.html">
<input type="submit" value="Delete">
</form></td>
</TR>
{% endfor %}

如何从模板中获取person.id并放到删除 View 中,删除我想要的person.id对应的对象。

最佳答案

您需要让您的delete 函数(顺便说一句,给它起个别的名字,比如delete_person)接受一个参数,pk。

def delete_person(request, pk):
...
...

然后在你的 urlconf 中,做这样的事情

url(r'^delete_person/(?P<pk>\d+)/$', 'delete_person', name='delete_person')

然后像这样在模板中生成url

{% url 'delete-person' person.id %}

PS - 无需让您的网址以 .html 结尾

PPS - 在 View 中进行一些验证以确保用户有权删除此人是个好主意。

关于html - Django - 如何使用 View 删除对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19754103/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com