Django里对数据库基本增删改查操作

urls.py文件里的内容---实现url路由

from django.contrib import admin
from django.urls import path,include
from app01 import views
urlpatterns = [
    path('credata/', views.credata),
]

views.py文件里方法定义

from django.shortcuts import HttpResponse
import pymysql
pymysql.install_as_MySQLdb()
from app01 import models
def 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()

转载于:https://blog.51cto.com/song1230/2167303

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值