Django—模型—增删改

  • 增删改


    # models.py
    from django.db import models
    
    # Create your models here.
    # 自定义模型必须继承Model
    class User(models.Model):
        # 字段名:不能是python的关键字;不能使用连续的下划线;
        #db_column:数据库表中的字段名称
        uid = models.AutoField(primary_key=True)
        # CharField类型必须指明长度max_length
        username = models.CharField(max_length=30,unique=True)
        password = models.CharField(max_length=128)
        regtime = models.DateTimeField(auto_now_add=True)
    
        class Meta: # 元数据,模型本身的信息
            #默认表名:应用名_模型名
            db_table = 'user'  # 表名
            ordering = ['username']  # 排序
    
    
    
    # views.py
    from random import randint
    
    from django.http import HttpResponse
    from django.shortcuts import render
    
    # Create your views here.
    from App.models import User
    
    
    def handle_data(request):
        # 增加记录
        # user = User(username='tom',password='123')
        # user.save()
        # 便利方法
        # user = {'username':'tom1','password':'33334'}
        # User.objects.create(**user)
    
        # 批量创建
        # first = ["张","李","赵","周","吴","郑","王"]
        # lastname = ['三','春花','翠花','卫国','二狗']
        # users = []
        # for name in range(100):
        #     username = first[randint(0,6)] + lastname[randint(0,4)]+str(randint(0,10000))
        #     users.append(User(username=username,password=str(randint(11111,999999))))
        # User.objects.bulk_create(users)
        # User.objects.bulk_create([User(username='test1'),User(username='test2')])
    
    
        #修改
        # user = User.objects.get(pk=1)
        # user.password = '3333'
        # user.save()
    
        #删除
        # pk表示主键
        # try:
        #     user = User.objects.get(uid=1)
        #     print(user,type(user))
        #     if user:
        #         user.delete()
        # except Exception as e:
        #     print(e)
        #删除多条记录
        # users = User.objects.filter(uid__gte=2)
        # print(users)
        # users.delete()
    
    
        return HttpResponse("增删改")
    
    
    def find_data(request):
        # all 过滤器 查询所有数据
        # users = User.objects.all()
        # print(data)
    
        #filter 过滤器  where
        # select * from user where uid=5
        # users = User.objects.filter(uid=5)
        # select * from user where uid>5
        # 过滤器可以串联调用
        users = User.objects.filter(uid__gt=5).filter(uid__lt=50)
        print(users)
        # return HttpResponse("query")
        return render(request,'list.html',locals())
    # urls.py
    
    from django.urls import path, include
    
    from App import views
    
    urlpatterns = [
        # 数据的增、删、改
        path('',views.handle_data, name='data'),
        path('query/',views.find_data, name='find'),
    ]
    
发布了180 篇原创文章 · 获赞 6 · 访问量 2323

猜你喜欢

转载自blog.csdn.net/piduocheng0577/article/details/105001797
今日推荐