Django 自带的ORM增删改查

通过Django来对数据库进行增删改查

1 首先创建类,在app应用程序里面的model模块里面创建类,写好数据库信息,方便我们待会初始化:

2 创建在django项目里面的settings里面添加app程序()在settings里面的INSTALLED_APPS里面)

3   python manage.py makemigrations

      python manage.py migrate

拿models里面的一个类举例:  
class WebGroup(models.Model):    name = models.CharField(max_length=64)    brief = models.CharField(max_length=255,blank=True,null=True)    owner = models.ForeignKey(UserProfile)    admins = models.ManyToManyField(UserProfile,blank=True,related_name=‘group_admins‘)    members = models.ManyToManyField(UserProfile,blank=True,related_name=‘group_members‘)    max_members = models.IntegerField(default=200)

    def __str__(self):        return self.name

django :  第一条命令是创建项目名,第二条是创建app,第三个同步(创建)数据库

   python3 manage.py startproject project_name
   python3 manage.py startapp app_name
   python3 manage.py syncdb

  

1.同步数据库

 python manage.py makemigrations
 python manage.py migrate
 本人使用的是django1.9.5版本
 2.创建超级管理员
 python manage.py createsuperuser

 3.运行django
   python manage.py runserver 8000
 

1 增加数据

我们在views里面随便定义一个方法名,然后下如以下代码 ,写入以下代码:

if request.method == "POST":
    input_em = request.POST[‘em‘]   # em 和 pwd都是和form表单里面的一一对应
    input_pw = request.POST[‘pwd‘]
   print(input_pw,input_em)
    models.UserInfo.objects.create(email=input_em, pwd=input_pw)        #models调用的是先前创建好的数据库

  

Django 1.9 CSRF verification failed. Request aborted

当出现这个报错提示的时候,我们应该在html页面上的form表单里面添加这行内容: {% csrf_token %}

<form action="/index/" method="post">
    {% csrf_token %}
    <input type="text" name="em"/>
    <input type="text" name="pwd"/>
    <input type="submit" value="添加"/>
</form>

  

2 删除数据

models.UserInfo.objects.filter(email=input_em).delete()
3 更改数据:
models.UserInfo.objects.filter(email=input_em).update(pwd=‘nihao‘)

  


4 查看数据:
我们需要在HTML页面里嵌套jinja2的代码,代码如下:
下面代码能够在表单里面根据后台数据库的内容来展示
{%  for line in user_info_list %}
    <tr>
        <td>{{ line.email }}</td>
        <td>{{ line.pwd  }}</td>
    </tr>
{% endfor %}
# app里面的代码如下:
views.py里面的一个方法:
def index(request):# 数据库获取数据,数据和HTML渲染  from app01 import models
  user_info_list = models.UserInfo.objects.all()
   return render(request,‘index.html‘,{‘user_info_list‘:user_info_list})

  


				
时间: 2024-10-08 20:12:39

Django 自带的ORM增删改查的相关文章

3.django模板,单表ORM增删改查

1.Django模板语法 模板语法: 变量: {{}} 1 深度查询 句点符 2 过滤器 {{val|filter_name:参数}} 标签: {% %} 1.1Django模板使用 from django.shortcuts import render import datetime def index(request): now = datetime.datetime.now() return render(request,"index.html",{"current_t

Django框架(三)-- orm增删改查、Django生命周期

一.orm介绍 1.什么是orm ORM即Object Relational Mapping,全称对象关系映射. 2.使用orm的优缺点 优点: 不用写SQL语句 开发效率高 缺点: SQL的效率低 3.使用orm 如果连接的是pycharm默认的Sqlite,不用改动,使用默认配置即可 如果连接mysql,需要在配置文件中的setting中进行配置: 将DATABASES={} 更新为 DATABASES = { 'default': { 'ENGINE': 'django.db.backen

ORM增删改查

目录 orm django 连接mysql顺序 1 settings配置文件中 2 项目文件夹下的init文件中写上下面内容, 补充 3 models文件中创建一个类(类名就是表名) 4.执行数据库同步指令, 5 创建记录 6.字段约束 数据库的操作(django) 增: 时间问题 删 改 批量插入(bulk_create) form表单提交之字典 查询api filter双下划线查询 多表查询 表结构 注意事项 多对多关系 一对一关系 多对一 外键 admin使用超级管理员 1.连接数据库 2

Django 多对多关系的增删改查

目录 Django多对多数据增删改查 1.表结构及基本方法 2.查 3.增 4.改 Django多对多数据增删改查 1.表结构及基本方法 1.表结构 # models.py class Book(models.Model): author = models.ManyToMany(to='author', relate_name='author') """ ...字段 """ class author(models.Model): "&q

Django ORM增删改查

ORM操作是通过类来操作的, 类通常是定义的表格 增加有三种方式: 方式一: models.User.objects.create( #表示对表User操作 username= "root", #属性列都写进去 password= "123", ) 方式二: obj = models.User( username= "WSX", password= "123") obj.save() 方式三: 将一个字典传进去,需要在其前面加

ORM增删改查(django)

单表操作: 一.添加 (1)方式一 from  mysite.models  import * def  add(request): book= Book(name="python",price=99,author="python作者") book.sava() return  HttpResponse("书籍信息添加成功") (2)方式2 def  add(request): book= Book.objects.create(name=&qu

django中对数据库的增删改查

Django的配置文件时settings.py中的 TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')], 只修改这一个 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processors.d

Django项目7 单表增删改查

1. import django,osos.environ.setdefault('DJANGO_SETTINGS_MODULE', 'dj_test.settings')django.setup() from user.models import Category,Article#增 # c_obj = Category.objects.create(name="Mysql1")#新增数据# print(c_obj.name)# print(c_obj.create_time)# p

Django之单表的增删改查

  books/urls.py """books URL Configuration The `urlpatterns` list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/1.11/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import