Django里对数据库基本增删改查操作
urls.py文件里的内容---实现url路由
from django.contrib import adminfrom django.urls import path,includefrom app01 import viewsurlpatterns = [ path('credata/', views.credata),]
views.py文件里方法定义
from django.shortcuts import HttpResponseimport pymysqlpymysql.install_as_MySQLdb()from app01 import modelsdef credata(request): #创建插入数据 # models.UserInfo.objects.create( # username='song', # password='123', # age='18' # ) #查询数据 # a =models.UserInfo.objects.filter(username='root') # for i in a: # print(i.id,i.username,i.password,i.age) #查到数据后进行删除 # models.UserInfo.objects.filter(username='root').delete() #更新数据,找到所有的列,把密码改成123456 models.UserInfo.objects.all().update(password='123456')
return HttpResponse('OK')
创建好类之后,想要使创建的表在数据库里生效,得在命令行执行python manage.py makemigrations
以上命令表示构建数据结构
python manage.py migrate
上条命令表示执行操作到数据库。
插入数据的时候自动添加创建时间
在modles.py 文件里
class UserInfo(models.Model): username = models.CharField(max_length=32) password = models.CharField(max_length=64) age = models.CharField(max_length=32) ctime = models.DateTimeField(auto_now_add=True,none=True) utime = models.DateTimeField(auto_now=True,none = True)
auto_now_add=True表示在生成数据的时候自动记录创建时间
auto_now=True 表示在操作数据的时候自动记录操作时间
但是下面这句是不能更新操作记录时间的models.UserInfo.objects.filter(username="wang").update(password='qwe123')
要想让自动更新时间生效得在views.py文件里定义方法下使用以下语句
a = models.UserInfo.objects.filter(username="wang").first() a.password= 'asdasd' a.save()
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。