zoukankan      html  css  js  c++  java
  • django之orm详解

    django中内置了orm,可以让我们非常便捷的操作数据库。

    在看本文前,请确保已经对django项目做了正确的配置。

    1.在app01下的models.py中新建类

    from django.db import models
    
    
    # Create your models here.
    
    
    class User(models.Model):
    	# int id primary key auto_increment 
        id = models.AutoField(primary_key=True)
    	# varchar username(255)
        username = models.CharField(max_length=255)
        password = models.CharField(max_length=255)
    
    # 还有许多其他字段
    

    2.使用django自带的数据库迁移命令

    python manage.py makemigrations
    python manage.py migrate
    

    注意:当我们对models中修改有关数据库的操作,都应该执行上面两条命令。保证数据库与我们django项目文件的一致性。

    执行完后可以看到我们的数据库中已经生成相对应的表。

    3.常用方法

    # 可在views.py视图函数下使用User类
    
    # 新增一条记录并返回记录对象
    user_obj = User.objects.create(username='yyh',password='123')
    # 或者
    user_obj = User(username='yyh',password='123')
    user_obj.save()
    
    
    # 查 
    user_obj_list = User.objects.filter(username='yyh')
    # filter方法返回一个对象列表
    user_obj = user_obj_list.first()
    user_obj = user_obj_list=[0]
    # 返回表中所有记录
    user_obj_list = User.objects.all()
    
    # 改
    user_obj = User.objects.filter(username='yyh').first()
    user_obj.username='yyh123'
    user_obj.save() # 根据主键 update
    
    # 删
    user_obj = User.objects.filter(username='yyh').first()
    user_Obj.delete()
    # 或者删除全部
    User.objects.filter().delete()
    User.objects.all().delete()
    
  • 相关阅读:
    MySQL length函数
    MySQL between ... and ...
    MySQL Group By使用
    MySQL 聚合函数/分组函数
    MySQL where与like
    MySQL order by与distinct
    城市网络
    滑动窗口
    合并回文子串(NC13230)
    NC50439
  • 原文地址:https://www.cnblogs.com/Ghostant/p/12150102.html
Copyright © 2011-2022 走看看