Django加Vue电商项目实战06 模型数据查询

前言

学无止境,无止境学。大家好,我是张大鹏,之前在抖音有5万多粉丝,不过现在不拍视频,专心写公众号了。笔者目前是高级Python工程师,之前是全栈工程师,主要擅长Golang和Python开发,对于JavaVue,React也有一些研究。工作之余,喜欢学习和分享,希望能够通过此公众号”张大鹏520″,将自己学到的东西分享给大家,和大家一起交流,一起成长,一起进步。

今天要给大家分享的是《Django加Vue电商项目实战06 模型数据查询》,这是一个系列的教程,从零基础到项目实战。在本教程中,我会给大家介绍Django如何进行增加,删除,更新,查询等。还会配套相关的练习,大家学完以后可以自行通过练习题巩固和加深对知识点的理解。

如果大家需要本教程的PDF电子书或者完整的源码,可以在文末找到获取方式哈。

新增数据

save新增

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import DepartInfo

if __name__ == "__main__":
    # 新增
    d = DepartInfo(depart_name="技术部")
    d.save()

    # 查询
    departs = DepartInfo.objects.filter(depart_name="技术部")
    for depart in departs:
        print(depart.id, depart.depart_name, depart.createdate)

create新增

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import DepartInfo

if __name__ == "__main__":
    # 新增
    DepartInfo.objects.create(depart_name="技术部")

    # 查询
    departs = DepartInfo.objects.filter(depart_name="技术部")
    for depart in departs:
        print(depart.id, depart.depart_name, depart.createdate)

更新数据

更新单个

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import DepartInfo

if __name__ == "__main__":
    # 查询
    depart = DepartInfo.objects.get(id=103)
    
    # 更新
    depart.depart_name = "技术研发部"
    depart.save()

    # 查询
    departs = DepartInfo.objects.filter(depart_name="技术研发部")
    for depart in departs:
        print(depart.id, depart.depart_name, depart.createdate)

更新多个

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import DepartInfo

if __name__ == "__main__":
    # 查询并更新
    DepartInfo.objects.filter(depart_name="技术部").update(depart_name="技术研发部")

    # 查询
    departs = DepartInfo.objects.filter(depart_name="技术研发部")
    for depart in departs:
        print(depart.id, depart.depart_name, depart.createdate)

删除数据

删除单个

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import DepartInfo

if __name__ == "__main__":
    # 查询并删除
    DepartInfo.objects.get(id=103).delete()

    # 查询
    departs = DepartInfo.objects.filter(depart_name="技术研发部")
    for depart in departs:
        print(depart.id, depart.depart_name, depart.createdate)

删除多个

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import DepartInfo

if __name__ == "__main__":
    # 查询并删除
    DepartInfo.objects.filter(depart_name="技术研发部").delete()

    # 查询
    departs = DepartInfo.objects.filter(depart_name="技术研发部")
    for depart in departs:
        print(depart.id, depart.depart_name, depart.createdate)

删除所有

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import DepartInfo

if __name__ == "__main__":
    # 查询并删除
    DepartInfo.objects.all().delete()

    # 查询
    departs = DepartInfo.objects.all()
    for depart in departs:
        print(depart.id, depart.depart_name, depart.createdate)

查询数据

查询所有用户

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import UserBaseInfo

if __name__ == "__main__":
    users = UserBaseInfo.objects.all()
    for user in users:
        print(user.username, user.createdate)

查询年龄大于30的用户

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import UserExtraInfo

if __name__ == "__main__":
    users = UserExtraInfo.objects.filter(age__gt=30)
    for user in users:
        print(user.username, user.age)

根据ID查询

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import UserExtraInfo

if __name__ == "__main__":
    user = UserExtraInfo.objects.get(id=116)
    print(user.username, user.age)

排除查询

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import UserExtraInfo

if __name__ == "__main__":
    users = UserExtraInfo.objects.exclude(id=116)
    for user in users:
        print(user.username, user.age)

根据字段查询

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import UserExtraInfo

if __name__ == "__main__":
    users = UserExtraInfo.objects.values("id""username""true_name")
    for user in users:
        print(user)

去重查询

import os
import sys

# 设置目录查找路径
sys.path.insert(0'../../')

# 设置Django配置信息
os.environ.setdefault('DJANGO_SETTINGS_MODULE''z05_django_orm.settings')
import django

django.setup()

# 导入模型
from index.models import UserExtraInfo

if __name__ == "__main__":
    users = UserExtraInfo.objects.distinct().values("department")
    for user in users:
        print(user)

结语

关注我不迷路,欢迎关注我的微信公众号”张大鹏520″,如果您对此文章感兴趣,欢迎点赞收藏,留言评论。

文中所有代码,只需要打赏20元,然后留言评论“已打赏”,即可获取哦。

本文的PDF电子书版,只需要打赏3元,然后留言评论“已打赏”,即可获取哦。

写文章不容易,不喜勿喷哈,如果有想要学编程,学项目,或者在工作中有项目难以单独完成需要提供帮助的同学,欢迎私信我哈。生活不易,想要利用学到的编程知识,业余赚点零花钱。

接项目:网站开发,APP开发,各种管理系统开发。

带徒弟:Python编程教学,Golang编程教学,前端编程教学。

谢谢您!!!


原文始发于微信公众号(张大鹏520):Django加Vue电商项目实战06 模型数据查询

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/48609.html

(0)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!