ycydynq头像
关注

django手写表单 数据库添加修改删除显示数据


models.py
from django.db import models

# Create your models here.
class UserInfo(models.Model):
    name=models.CharField(max_length=32)
    sex=models.CharField(max_length=16)
    age=models.IntegerField()
    love=models.CharField(max_length=64)

class UserInfo2(models.Model):
    name=models.CharField(max_length=10,verbose_name='姓名')
    age=models.SmallIntegerField(verbose_name='性别')
    gender_choice=(
        (1,'男'),
        (2,'女')
    )
    gender=models.SmallIntegerField(verbose_name='性别',choices=gender_choice)
    salary=models.DecimalField(verbose_name='收入',max_digits=10,decimal_places=2,default=0)
    phone=models.CharField(verbose_name='电话号码',max_length=11,null=True,blank=True)
    create_time=models.DateTimeField(verbose_name='入职时间')



userinfo/add.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>添加用户</title>
</head>
<body>
<form method="post">
   {% csrf_token %}
   姓名 <input type="text" name="name"><br/>
   年龄 <input type="text" name="age"><br/>
   性别 <input type="text" name="sex"><br/>
   爱好 <input type="text" name="love"><br/>

   <input type="submit" value="提交">
</form>
</body>
</html>

userinfo/list.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>用户列表</title>
</head>
<body>
<a href="/index/useradd">添加用户</a>
<h1>用户列表</h1>
<table border="3px">
    <tr>
        <td>id</td>
        <td>名称</td>
        <td>性别</td>
        <td>年龄</td>
        <td>爱好</td>
        <td>操作</td>
    </tr>
    {% for user in userinfo %}
        <tr>
        <td>{{ user.id }}</td>
        <td>{{ user.name }}</td>
        <td>{{ user.sex }}</td>
        <td>{{ user.age }}</td>
        <td>{{ user.love }}</td>
        <td>
            <a href="/index/useredit/?id={{ user.id }}" >修改</a>
             <a href="/index/userdel/?id={{ user.id }}" >删除</a>
        </td>
    </tr>
    {% endfor %}
</table>
</body>
</html>
userinfo/edit.html
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>修改用户</title>
</head>
<body>
<form method="post">
    {% csrf_token %}
   <input type="hidden" name="id" value="{{ userinfo.id }}"> 
   姓名 <input type="text" name="name"  value="{{ userinfo.name }}"><br/>
   年龄 <input type="text" name="age"  value="{{ userinfo.age }}"><br/>
   性别 <input type="text" name="sex"  value="{{ userinfo.sex }}"><br/>
   爱好 <input type="text" name="love"  value="{{ userinfo.love }}"><br/>
    
   <input type="submit" value="提交"> 
</form>
</body>
</html>

views.py

from index_app import models


def userlist(request):
    userinfo=models.UserInfo.objects.all()
    return render(request,'userinfo/list.html',{'userinfo':userinfo})

def useradd(request):
    if request.method=='GET':
        return render(request,'userinfo/add.html')
    else:
        name=request.POST.get('name')
        age=request.POST.get('age')
        sex=request.POST.get('sex')
        love=request.POST.get('love')
        models.UserInfo.objects.create(name=name,age=age,sex=sex,love=love)
        return  redirect('/index/userlist')

def useredit(request):
    if request.method=='GET':
        try:
            userinfo=models.UserInfo.objects.get(id=request.GET.get('id'))
            return render(request,'userinfo/edit.html',{'userinfo':userinfo})
        except:
            return HttpResponse('没有该记录')
    else:
        id=request.POST.get('id')
        name=request.POST.get('name')
        age=request.POST.get('age')
        sex=request.POST.get('sex')
        love=request.POST.get('love')
        #print(id)
        models.UserInfo.objects.filter(id=id).update(name=name,age=age,sex=sex,love=love)
        return  redirect('/index/userlist')

def userdel(request):
     try:
         models.UserInfo.objects.get(id=request.GET.get('id')).delete()
         return redirect('/index/userlist')
     except:
         return HttpResponse('没有该记录')

还要配对应的url

转载自 CSDN-专业IT技术社区

原文链接:https://blog.csdn.net/ycydynq/article/details/166898899

文章来源转载

评论

赞0

评论列表

微信小程序
QQ小程序

关于作者

点赞数:0
关注数:0
粉丝:0
文章:0
关注标签:0
加入于:--