当前位置: 首页 > news >正文

网站建设所需资料及费用旅游网页网站开发的目的和意义

网站建设所需资料及费用,旅游网页网站开发的目的和意义,wordpress如何加菜单,招聘外包Django——数据库 1、ORM ORM 是 Django提供的内置框架 #xff0c; 是和一些关系型数据库的连接接口#xff0c;使用类对象的方式操作数据(增删改查)。 ORM 将类对象的操作语句转换为 sql 语句#xff0c;将在数据库中查询得到的结果转换为对象的格式进行返回 在 Djang…Django——数据库 1、ORM ORM 是 Django提供的内置框架 是和一些关系型数据库的连接接口使用类对象的方式操作数据(增删改查)。 ORM 将类对象的操作语句转换为 sql 语句将在数据库中查询得到的结果转换为对象的格式进行返回 在 Django 中配置 MySQL 数据库 , 先在 MySQL 中创建好数据库 DATABASES {default: {# 配置数据库引擎 使用 MySQL 数据库ENGINE: django.db.backends.mysql,HOST : 127.0.0.1,USER : root,PASSWORD : root,# 配置连接的数据库 数据库必须先创建 才可以进行链接NAME : django_orm} }2、模型类 1、定义模型类 2、数据迁移 3、通过类对象操作数据(增删改查)定义模型类 在应用中的 models 文件中创建所有的模型类都要继承 Model 类 from django.db import modelsclass Student(models.Model):# 数据库中的字段 在这里定义属性# name char(10)# CharField 定义字符类型 这个类型字段必须定义最大长度# max_length 定义字段的最大长度name models.CharField(max_length10)# age int# IntegerField 定义整型字段age models.IntegerField()# height float/double(3 , 2)# DecimalField 定义浮点类型# max_digits 数据的长度# decimal_places 小数位数 height models.DecimalField(max_digits3 , decimal_places2)# gender enum(男 , 女)# 设置选项字段的选项值gender_choices (# (选项字符 选项内容)(1 , 女),(2 , 男))gender models.CharField(max_length1 , choicesgender_choices)# 增加字段 必须给新增的字段设置默认值 或者设置允许为空# 字段增加好之后 重新迁移再同步数据# db models.CharField(max_length50 , defaultaaa)# db models.CharField(max_length50 , nullTrue) 数据迁移 定义完模型类之后必须进行数据迁移 数据库中才能同步到对应的数据表以及数据 。 数据迁移要在项目的终端的操作 第一步 执行 makemigrations 命令根据定义的模型类生成迁移文件 python manage.py makemigrationsORM 在执行迁移数据的时候当模型类没有定义 id 字段会自动的生成一个主键且自增的字段 —— id。 第二步 执行 migrate 命令 数据同步到数据库中 python manage.py migrate在定义模型类的时候没有给其对应的数据表表名 那么迁移数据到数据库中这个表的表名会默认设置为 应用名称_类名 class Meta:# 设置在数据库中的表名db_table student单独操作 orm 进行数据的增删改查orm 是依赖 django 环境。方式一打开 Django 项目的交互环境方式二在测试文件中导入 Django 的启动环境在 test 文件中导入 django 启动环境 if __name__ __main__:import os# 导入 django 的环境os.environ.setdefault(DJANGO_SETTINGS_MODULE, django_orm.settings)# 启动 django 环境import djangodjango.setup()3、数据操作 1、使用 raw 方法操作原始的 SQL from OrmApp.models import Student# 增加数据 sql1 insert into student(name , age , height , gender)values(阿宸 , 27 , 1.78 , 2) sql2 insert into student(name , age , height , gender)values \(尔康 , 18 , 1.90 , 2), \(。。 , 18 , 1.80 , 2),\(火雷噬嗑,18 , 1.90 , 2),\(乘着风,18 , 1.90 , 2),\(境界, 18 , 1.90 , 2),\(张越,18 , 1.90 , 2)# 将 sql 命令交给 raw 方法去执行 # 通过模型类对象进行操作 add_data Student.objects.raw(sql2) # 对操作完成之后的对象进行提交 add_data.query._execute_query()# 查询数据 sql select * from student # RawQuerySet 数据查询集 是一个对象 data Student.objects.raw(sql) print(data) for i in data:# 获取到选项字段的具体值# 对象.get_字段名_display()print(i.name , i.age , i.get_gender_display())# 修改数据 sql update student set age28 where id1 update_data Student.objects.raw(sql) update_data.query._execute_query() # 删除数据 sql delete from student where id3 delete_data Student.objects.raw(sql) delete_data.query._execute_query()2、直接执行原始的 SQL 语句 from django.db import connection # 创建游标 cursor connection.cursor() sql insert into student(name , age , height , gender)values(七零 , 30 , 1.70 , 2) # cursor.execute(sql)sql select * from student cursor.execute(sql) data cursor.fetchall() print(data)3、使用 django 提供的模型方法 # 添加数据 # 方式一会返回一个数据对象 Student.objects.create(name小阿宸 , age1 , height0.95 , gender1) # 方式二这种方式添加数据必须执行保存 data Student(name小七零 , age3 , height1.10 , gender2) data.save()# 查询数据 # all 查询表中的所有数据 data Student.objects.all() # QuerySet 返回一个查询集对象 print(data) for i in data:print(i.name , i.age , i.get_gender_display())# filter 相当于 where子句 data Student.objects.filter(gender1) print(data) for i in data:print(i.name, i.age, i.get_gender_display())4、SQL 注入 SQL 注入 通过不正当手段在参数我盒子写入目的不纯的代码 导致数据泄露或者数据库被破坏 from django.shortcuts import render , HttpResponse from django.views import View from django.db import connection from OrmApp.models import Userclass LoginView(View):def get(self , request):return render(request , login.html)def post(self , request):username request.POST.get(username)password request.POST.get(password)# 通过原始的 SQL 语句操作# cursor connection.cursor()# sql fselect * from user where name{username} and pwd{password}# # select * from user where name{username} and pwdac or 11 ## cursor.execute(sql)# data cursor.fetchone()# 使用 orm 的方式查询数据data User.objects.filter(nameusername , pwdpassword)# 判断是否能够查询出来数据if data:return HttpResponse(登录成功)else:return HttpResponse(登录失败) 1、不适用原始的 SQL 语句 2、在数据进行数据库查询之前 进行数据检验校验是否有不合法字符 3、使用 orm 模型类的方式操作
http://www.zqtcl.cn/news/893324/

相关文章:

  • 怎么用手机做刷会员网站网页设计指什么
  • 小企业网站建设多少钱网页设计图片剧中
  • 新乐做网站优化如何做二级域名子目录网站
  • 如何在网站上做推广中国在数码网站注册域名好 gt
  • 电子商务电商网站饿建设管理网站建设
  • php网站出现乱码网站建设项目总结
  • 网站建设公司墨子网络用我在线网站建设
  • 长寿网站建设公司服装设计有哪些网站
  • 苍溪规划和建设局网站网页设计制作报告
  • html5网站 源码360浏览器个别网页打不开怎么解决
  • 找个小网站建设网站优点
  • 台州网站建设优化网站建设加微信
  • 公司网站建设费会计分录义乌商城集团的网站建设
  • 彩票网站建设基本流程网站文章页做百度小程序
  • 在淘宝上做代销哪个网站好推广普通话喜迎二十大的手抄报怎么画
  • 知名网站建设开发受欢迎的唐山网站建设
  • 普洱网站搭建创建论坛网站需要多少钱
  • 自己做的网站如何在网络上展示wordpress 手动采集
  • 上海做网站要多少钱wordpress教程app
  • 房地产设计网站沈阳人流哪个医院好安全
  • 贵阳专业做网站微信小程序商城源代码
  • seo建站收费地震郑州做网站开发销售
  • 东莞整站优化推广公司找火速建设企业网站要多少钱
  • 网站备案 两个域名东莞保安公司联系电话
  • 网站专业制作公司律师如何在网上推广
  • 免费培训seo网站一直免费的服务器下载安装
  • 广州h5网站制作公司做竞价网站 要注意什么
  • 太原网站搭建推广id怎么编辑wordpress
  • 网站开发网站设计制作广告设计与制作基础知识
  • 企业建设H5响应式网站的5大好处网站备案后经营