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

衡水大型网站建设桂林哪里做网站

衡水大型网站建设,桂林哪里做网站,wordpress主机 知乎,安徽华夏网站建设1.创建项目 1.1基于终端创建Django项目 打开终端进入文件路径#xff08;打算将项目放在哪个目录#xff0c;就进入哪个目录#xff09; E:\learning\python\Django 执行命令创建项目 F:\Anaconda3\envs\pythonWeb\Scripts\django-admin.exe#xff08;Django-admin.exe所…1.创建项目 1.1基于终端创建Django项目 打开终端进入文件路径打算将项目放在哪个目录就进入哪个目录 E:\learning\python\Django 执行命令创建项目 F:\Anaconda3\envs\pythonWeb\Scripts\django-admin.exeDjango-admin.exe所在路径 startproject 项目名称 如果所在环境的Scripts已经加入环境变量了可以直接在终端写 django-admin startproject 项目名称 eg创建项目名为MySite的命令 F:\Anaconda3\envs\pythonWeb\Scripts\django-admin.exe startproject MySite 1.2 基于Pycharm创建Django项目 1.新建项目选择Django选择项目所在位置和解释器然后点击“创建” 说明 通过终端的命令行创建的项目是比较标准的 通过pycharm创建的项目在么标准的基础上默认加了 创建了一个templates目录【删除】 Pycaharm在setting.py中的TEMPLATES配置项中添加了如右图所示部分Pycharm加这个的意思是找模板就去外层的templates目录找【删除】 2.默认项目结构介绍 MySite ├─MySite │ └─asgi.py 【异步式的接收网络请求】【默认不动】 │ └─wsgi.py【同步式的接收网络请求】【默认不动】 │ └─settings.py 【项目的配置文件链接数据库注册APP】【经常修改的文件】 │ └─urls.py 【URL和函数的对应关系】【经常修改的文件】 │ └─__init__.py └─manage.py 【项目的管理启动项目、创建app、数据管理】【默认不动经常使用】注意使用tree命令显示不完全的原因 tree /f 3.APP 总项目 app,用户管理【独立的表结构、函数、HTML母版、CSS】app,订单管理 【独立的表结构、函数、HTML母版、CSS】app,后台管理 【独立的表结构、函数、HTML母版、CSS】app,API 【独立的表结构、函数、HTML母版、CSS】 注意我们在起初刚开始的时候项目简单开发简洁用不到多APP一般情况下只创建1个APP即可 3.1 APP 的创建 打开Command Prompt终端在终端输入 python maneage.py startapp app名 E:. │ manage.py │ ├─app01 │ │ admin.py 【默认不用动Django默认提供了admin后台管理】 │ │ apps.py 【默认不用动app的启动类】 │ │ models.py 【重要对数据库进行操作的】 │ │ tests.py【默认不动。用来做单元测试的】 │ │ views.py 【重要定义url对应的视图函数】 │ │ __init__.py │ │ │ └─migrations 【默认不用动它是Django的module对数据库字段进行修改的时候用来做记录的】 │ __init__.py │ └─MySite│ asgi.py│ settings.py│ urls.py│ wsgi.py│ __init__.py│└─__pycache__settings.cpython-39.pyc__init__.cpython-39.pyc 4.Django快速上手 4.1打通基础数据流 注意在运行Django程序之前确保APP已注册 步骤 1.在app01中的apps.py中找到App01Config然后在settings.py中的INSTALLED_APPS项写入‘app01.apps.App01Config’ INSTALLED_APPS [django.contrib.admin,django.contrib.auth,django.contrib.contenttypes,django.contrib.sessions,django.contrib.messages,django.contrib.staticfiles,app01.apps.App01Config#注册APP01 ]2.在urls.py中编写URL和视图函数对应关系 在MySite中的urls.py中先引入app01中的views.py中视图函数再将函数和URL对应声明 在views.py中编写视图函数 启动Django项目 通过命令行启动 python manage.py runserver Pycharm启动可以编辑配置之后点击播放按钮启动 这样项目基本数据流向就跑通了4.2 templates 模板 注意 优先去项目根目录的template中寻找【要提前在settings.py中配置DIRS】如果哦没找到再根据app的注册顺序在每个app下的templates目录去找 4.2.1 Django模板语法 1本质在HTML中写一些占位符由数据对占位符进行替换和处理。模板语法的原理如下图所示 注意 整个过程render 的内部 1.读取含有模板语法的HTML文件 2.内部进行渲染模板语法执行并替换数据最终只得到含有HTML标签的字符串 3.将渲染替换完成的字符串返回给用户浏览器 2模板语法演示 views.py中对应的处理函数部分 def usetemp(request):# 变量name 小明# 列表arr [小红, 小兰, 小白]# 字典dic {name: 小明, age: 18, address: 北京}# 列表套字典lic [{name: 小兰, age: 18, address: 上海},{name: 小红, age: 18, address: 天津},{name: 小白, age: 18, address: 广东}]return render(request, usetemp.html,{name: name,friends: arr,userinfo: dic,friends_info: lic})带有模板语法的usetemp.html代码 body h1变量/h1 span{{ name }}/span h1数组/h1 ulli{{ friends.0 }}/lili{{ friends.1 }}/lili{{ friends.2 }}/li /ul ul{% for item in friends %}li{{ item }}/li{% endfor %} /ul h1字典/h1 span{{ userinfo.name }}/span span{{ userinfo.age }}/span span{{ userinfo.address }}/span span遍历字典索引/span ul{% for index in userinfo.keys %}li {{ index }}/li{% endfor %}/ul span 遍历字典值/span ul{% for value in userinfo.values %}li{{ value }}/li{% endfor %}/ul span循环字典的每一项/span ul{% for key,value in userinfo.items %}li{{ key }} {{ value }}/li{% endfor %}/ul span{{ friends_info.0 }}/span br/ span{{ friends_info.0.name }}/span h1条件语句/h1 {% for item in friends_info %}{% if item.name 小芳 %}span 小芳:{{ item.age }}/span{% elif item.name 小红%}span小红年龄:{{ item.age }}/span{% else %}span 没有符合条件的用户/span{% endif %} {% endfor %}/body4.3 静态文件 在开发过程中一般将 图片CSSJS 都会被当做静态文件处理。 静态文件在Django项目中步骤 先在app的目录下创建static 文件夹如static/img,js,css,plugins 2.在Django中所有静态资源的引入 {% load static %} 使用的路径写法{% static img/1.jpeg %} 5.请求和响应 常见的请求和响应 request是一个对象封装了用户发过来的所有数据 # 1.获取请求方式get/POSTprint(request.method)# 2.获取咋URL上传递的参数值print(request.GET[a])# 3.post请求会在请求体中传递数据print(request.POST)# 4.【响应】HttpResponse(OK):将字符串的内容返回给请求者# return HttpResponse(OK)# 5.【响应】render:读取HTML文件的内容再进行渲染替换生成新的字符串返回给用户的浏览器# return render(request, req.html)# 6.【响应】redirect:强制浏览器重定向return redirect(https://www.baidu.com)注 在使用表单提交数据时会触发Django的安全机制只需要在form标签开头加入{% csrf_token %} form methodPOST actionlogin{% csrf_token %} /form6.数据库操作 MySqlpymysql import pymysql #1.连接MysQL conn pymysql.connect(host127.0.0.1,port3306,userroot,passwdroot123, charsetutf8, db unicom ) cursor conn.cursor (cursorpymysql.cursors.Dictcursor) #2.发送指令 cursor.execute( insert into admin(username , password,mobile)values(wupeiqi , qwe123,15155555555)) conn.commit( ) #3.关闭 cursor.close( ) conn.close()在Django中一般不直接通过pymysql操作MySQL,太繁琐了。Django为我们提供了ORM框架 6.1 安装ORM要用的第三方模块 pip install mysqlclient 6.2 ORM ORM 的作用 创建和增删改查数据库中的表不用写SQL语句【注意无法创建数据库】操作表中的数据 ORM连接MySQL的步骤 创建数据库启动MySQL,创建数据库 CREATE DATABASE CHARACTER SET utf8; 在settings.py中进行配置和修改 DATABASES {default: {ENGINE: django.db.backends.mysql,NAME: XXX, # 数据库名字USER: root,PASSWORD: XXX,HOST: 127.0.0.1, # 要连接哪台机器上的MySQLPORT: 3306 # 端口号} }6.3. 基于Django去操作表 6.3.1 创建表 1.在app下的models.py中编辑 from django.db import modelsclass UserInfo(models):name models.CharField(max_length32)password models.CharField(max_length64)age models.IntegerField()2.在终端运行命令 python manage.py makemigrations python manage.py migrate 注意在运行命令之前确保APP已经提前注册 6.3.2 修改表 在表中新增列时由于已经存在的列中可能已有数据 所以新增列必须要指定新增列对应的数据 选择1那么就手动输入值选择2那么放弃新增列(应该在新增列中设置默认值) # 设置默认值 address models.CharField(defaultXXX街道XXX号) # 允许为空 data models.IntegerField(nullTrue, blankTrue)注意 以后在开发中如果想要对表结构进行调整 在models.py文件中操作类即可数据库迁移命令 python manage.py makemigrations python manage.py migrate 6.3.3对表字段的增删改查 # 1.新建数据 # models.Department.objects.create(title活动, segment销售部) # models.UserInfo.objects.create(namexijing, password123456, age18)# 2.删除数据 # 删掉UserInfo里面id2的记录 # models.UserInfo.objects.filter(id2).delete() # 删掉Departemt里面的所有记录 # models.Department.objects.all().delete()# 3.查数据 #queryset models.UserInfo.objects.all() # 得到的是一个列表 # for item in queryset: # print(item.name,item.age,item.password) # 获取id5的数据 # row_data models.UserInfo.objects.filter(id5).first() # print(row_data)# 4.更新数据 # 将UserInfo表里面所有数据的密码字段全都更新成999 # models.UserInfo.objects.all().update(password9999) # 筛选条件 models.UserInfo.objects.filter(id5).update(password123456)7.案列展示流程 7.1展示用户列表 url函数 获取所有用户信息HTML渲染 7.2添加用户信息 url函数 GET看到页面输入内容POST,提交写入数据库 7.3删除用户 url函数 http://127.0.0.1:8000/info/delet?id5def handlefunc(request): id request.GET.get(‘id’) module.UserInfo.obejects.filter(id5).delete() ects.all().update(password‘9999’)
http://www.sczhlp.com/news/274680/

相关文章:

  • 德阳公司网站建设自己做网站卖水果
  • 公司建设网站制作上海建设工程检测登记的网站
  • 唐山网址建站网站建设费用:做个网站要多少钱?
  • 2025年热门的航空航天氟橡胶厂家最新推荐排行榜
  • 2025年11月虫草花厂家对比榜:五家干品年产量与认证资质全解析
  • 2025年评价高的一体化固态继电器厂家最新TOP排行榜
  • 2025年11月虫草花厂家推荐榜:五强对比评测与选购全攻略
  • 2025年比较好的贴片式骨架最新TOP厂家排名
  • 东莞感染人数最新消息seo企业站收录
  • 开发网站的步骤sem竞价推广公司
  • 网站建设后期维护找人做网站要拿到源代码吗
  • 株洲网站设计做网站的团队业绩怎么写
  • 做网站需要到什么技术网站开发并发 性能
  • 临河做网站wordpress自动审核评论
  • 家电网站首页制作尚学教育
  • 做平面图片的网站用dw制作个人简介网页教程
  • 做网站运营需要学什么软件创建一个企业网站流程的步骤
  • 广西建设局网站学校网站建设与管理
  • 聊城建设局网站网站源码下载平台源码
  • 大庆建设网站表格下载个人如何申请域名
  • 儿童学做彩泥的网站西安网络优化培训机构公司
  • 嘉兴模板建站定制做面包有哪些网站知乎
  • 网站开发费用是否资本化西安搜推宝网络科技有限公司
  • 网站被挂马原因wordpress 通过电子邮件发布
  • 个人网站模板html 下载哪些网站可以做edge主页
  • 北京谁会做网站开发在线商城建设
  • 浙江省城乡建设网站证件查询外贸做编织袋常用网站
  • 个体户可以做开发网站业务嘛龙华新区城市建设局网站
  • 网站怎么更新文章泉州企业网站建设
  • 建站系统cmswordpress话题活动插件