html – Django – 如何使用视图删除对象
发布时间:2020-12-14 19:44:07 所属栏目:资源 来源:网络整理
导读:我有班上的人 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):
我有班上的人
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) 我有删除视图 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并将其放在删除视图中并删除与我想要的person.id相对应的对象. 解决方法
你需要有你的删除功能(顺便说一句,把它命名为其他东西,比如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 – 在视图中进行一些验证是一个好主意,以确保用户有权删除该人. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |