本节课要删除用户了。
前提是 用户要先被搜索出来才行。
就是点击这个按钮:
首先,给这个删除按钮 弄个@click
然后在下面写出这个del_user函数:
那么问题来了,这个函数要怎么实现?
答:
先拿到用户id,然后发请求给后台即可。
那么用户id在哪呢?
答:
在变量userInfo中
所以函数写成下图即可:
然后去django的urls.py中写好:
然后去写好这个del_user函数:
经过测试后,成功删除了。
不过有的同学就要问了,是不是忘记删除want择偶标准表的数据了?
其实不是忘了,而是不需要。
我们设置了外键当时,并且指定了删除操作会触发联级删除。所以删userInfo表即可自动删除掉want表的数据。
具体代码可以复制:
def del_user(request): id = request.GET['id'] DB_userInfo.objects.filter(id=id).delete() return HttpResponse('')
from django.db import models # Create your models here. class DB_userInfo(models.Model): wechat = models.CharField(max_length=20,default='') #微信号,字符串类型,最大长度20,默认值为空字符串 sex = models.CharField(max_length=20,default='') #性别,字符串类型,man / women age = models.IntegerField(default=0) #年龄,整形 money = models.IntegerField(default=0) #年收入,整形 adress = models.CharField(max_length=20,default='') #地址,字符串类型,最大长度20,默认值为空字符串 height = models.IntegerField(default=0) #身高厘米,整形 weight = models.IntegerField(default=0) #体重斤,整形 appearance = models.IntegerField(default=0) #外表,满分10分,整形 character = models.CharField(max_length=20,default='') #性格,字符串描述,关键字匹配算法 education = models.CharField(max_length=20,default='') #学历,字符串描述,关键字匹配算法 def __str__(self): return self.wechat class DB_want(models.Model): #注意,其中按照人类习惯,,如年龄稍小加分就比稍大高,但没有正好高。 height = models.IntegerField(default=0) #身高厘米,整形 money = models.IntegerField(default=0) #年收入,整形 education = models.CharField(max_length=20,default='') #学历,字符串描述,关键字匹配算法 age = models.IntegerField(default=0) #年龄,整形 adress = models.CharField(max_length=20,default='') #地址,字符串类型,最大长度20,默认值为空字符串 user_info = models.ForeignKey(DB_userInfo,on_delete=models.CASCADE,related_name='user_info') #设置外键 def __str__(self): return str(self.user_info)
当然我们一开始不使用外键的话,这些功能也一样可以实现。
欢迎继续关注