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

wordpress 5.0.2企业站主题城乡和住房建设厅网站首页

wordpress 5.0.2企业站主题,城乡和住房建设厅网站首页,编程培训机构找极客时间,营销型网站公司目录 一、Django环境搭建与命令 1.1、安装 1.2、命令行 创建项目 编写代码 运行 app概念 1.3、Pycharm创建项目 1.4、虚拟环境 创建虚拟环境 - 命令行 介绍 操作 基本问题 Pycharm 项目虚拟环境 django虚拟环境【安装django最新版本】 django虚拟环境【安装指…目录 一、Django环境搭建与命令 1.1、安装 1.2、命令行 创建项目 编写代码 运行 app概念 1.3、Pycharm创建项目 1.4、虚拟环境 创建虚拟环境 - 命令行 介绍 操作 基本问题 Pycharm 项目虚拟环境 django虚拟环境【安装django最新版本】 django虚拟环境【安装指定版本django】 1.5、关于创建app 二、路由 2.1、传统的路由 传参的几种方式 1restful风格 2问号传参 2.2、正则表达式路由 2.3、路由分发 include分发 手动分发 2.4、name属性 2.5、namespace 2.6、namespace扩展 namespace需要设置app_name 手动分发 2.7、最后的 / 如何解决 2.8、当前匹配对象 一、Django环境搭建与命令 1.1、安装 pip install django3.2 C:\Python39- python.exe- Scripts- pip.exe- django-admin.exe- Lib- re.py- random.py- site-pakages- django3.2... 1.2、命令行 创建项目 cd 指定目录 django-admin startproject 项目名 django_demo01 ├── manage.py [项目的管理工具] └── django_demo01├── __init__.py├── settings.py 【配置文件只有一部分。程序启动时先读取django内部配置再读settings.py】├── urls.py 【主路由在里面编写 /xxx/xxx/xxx --- index 】├── asgi.py 【异步】└── wsgi.py 【同步主】 编写代码 在urls.py中编写 from django.contrib import admin from django.urls import pathfrom django.shortcuts import HttpResponsedef info(request):print(请求来执行了)return HttpResponse(xxxx)def xxxx(request):print(请求来执行了)return HttpResponse(。。。。。。)urlpatterns [# path(admin/, admin.site.urls),path(api/index/, info),path(api/show/, xxxx), ] 运行 cd 项目 python manage.py runserver python manage.py runserver 127.0.0.1:8000 python manage.py runserver 127.0.0.1:9000 访问http://127.0.0.1:8000/api/index/ app概念 cd 项目 python manage.py startapp 名字 django_demo01 ├── manage.py [项目的管理工具] ├── web├── __init__.py├── views.py [视图函数]├── models.py [ORM基于models可以对数据库进行简便的操作]... └── django_demo01├── __init__.py├── settings.py 【配置文件只有一部分。程序启动时先读取django内部配置再读settings.py】├── urls.py 【主路由在里面编写 /xxx/xxx/xxx --- index 】├── asgi.py 【异步】└── wsgi.py 【同步主】 app的概念其实就是按业务分比如一个项目中支付功能一个app、订单功能一个app有点像Java里微服务的意思。 现在我们把刚才写的两个方法的代码放到web/views.py中 修改urls.py代码 启动项目 1.3、Pycharm创建项目 直接点击启动项目 1.4、虚拟环境 注意以后再创建项目时不要一直用系统解释器为每个项目虚拟环境 项目文件。 创建虚拟环境 - 命令行 介绍 venvPython官方用于创建虚拟环境的工具。 cd xxx/xxx/crm python3.9 -m venv ddd python3.7 -m venv xxxx python3.7 -m venv /xxx/xxx/xxx/xx/ppp virtualenv 【推荐】 pip install virtualenv cd /xxx/xx/ virtualenv ddd --pythonpython3.9 virtualenv /xxx/xx/ddd --pythonpython3.7 操作 第一步pip安装virtualenv pip install virtualenv 第二步在D:\study\python\envs创建虚拟环境 virtualenv crm --pythonpython3.9 注意crm是我们的虚拟环境名随便起。 第三步激活虚拟环境 cd D:\study\python\envs\crm\Scripts activate 第四步虚拟环境中安装Django包 pip install django3.2 第五步创建django项目 cd D:\study\python\projects django-admin startproject crm 注意这里的crm是项目名。 第六步退出虚拟环境 deactivate 基本问题 问题1如何删除虚拟环境 直接删文件夹即可。比如我们上面例子虚拟环境文件夹叫crm直接删除。 问题2使用virtualenv创建虚拟环境时Python3.9的系统环境可以创建Python3.7虚拟环境吗 不可以你系统环境Python是什么版本只能创建什么版本的虚拟环境。 Pycharm 项目虚拟环境 我的习惯一般在venv前面加上点默认让它隐藏。 django虚拟环境【安装django最新版本】 注意这种方式默认pip install django命令安装安装的是最新版本的django。 django虚拟环境【安装指定版本django】 第一步我们先创建普通Python项目 第二步打开终端输入安装3.2版本django命令 pip install django3.2 第三步在终端输入如下命令 django-admin startproject django_test01 . 第四步添加django服务 第五步启动django服务 1.5、关于创建app 第一步先安装指定版本的django项目 第二步项目下右键创建apps文件夹 注意apps文件夹里包括各种模块的文件。 第三步在apps文件夹下随便创建几个文件代表模块 第四步分别为模块创建app 在终端中分别输入 python manage.py startapp api apps/api python manage.py startapp backend apps/backend python manage.py startapp web apps/web 第五步修改这三个模块apps文件里的name属性 这就是一个完整的django多app应用结构了。 二、路由 2.1、传统的路由 urls.py from django.contrib import admin from django.urls import path from apps.web import viewsurlpatterns [path(home/, views.home),path(news/int:nid/edit/, views.news),path(article/, views.article), ] path()第一个参数是我们需要在浏览器访问的url地址第二个参数是函数名。 views.py from django.shortcuts import render, HttpResponsedef home(request):return HttpResponse(成功)def news(request, nid):print(nid)page request.GET.get(page)return HttpResponse(新闻)def article(request):nid request.GET.get(nid)print(nid)return HttpResponse(文章) 传参的几种方式 1restful风格 urlpatterns [path(news/int:nid/edit/, views.news) ] def news(request, nid):print(nid) # 接收参数return HttpResponse(新闻) int整数 str字符串 / slug字母数字下滑线- uuiduuid格式 path路径可以包含 / 注意字符串你可以输入任何东西比如aaabbb这种但slug有等号就会报错因为slug只能包含字母数字下划线。 2问号传参 urlpatterns [path(article/, views.article) ] def article(request):nid request.GET.get(nid) # 接收参数print(nid)return HttpResponse(文章) 2.2、正则表达式路由 在django1版本用的多。 在django2版本用的少 2.3、路由分发 include分发 假如200个功能。 include app一般将功能拆分不到不同的app中。 第一步在三个app模块中分别创建自己的urls.py文件 第二步对api模块进行操作 views.py from django.shortcuts import render,HttpResponsedef getApiName(request):return HttpResponse(编程抗氧化——api) urls.py urlpatterns [path(getApiName/, views.getApiName), ] 第三步对web模块进行操作 views.py from django.shortcuts import render, HttpResponsedef getWebName(request):return HttpResponse(编程抗氧化——web) urls.py urlpatterns [path(getWebName/, views.getWebName), ] 第四步在主urls.py中编码引入其它模块的urls from django.contrib import admin from django.urls import path,includeurlpatterns [path(api/, include(apps.api.urls)),path(web/, include(apps.web.urls)), ]第五步测试 当我们路径带有api或者web自动匹配到主urls.py然后找对应的include为我们分发到下面子模块的urls.py中。 手动分发 有时候我们可能项目没那么多功能也就用不着创建多个app模块假如说我们现在就一个模块有用户的增删改查、角色的增删改查、菜单的增删改查等等... 那么urls.py就得是这样的 path(user/add/, views.userAdd), path(user/delete/, views.userDelete), path(user/edit/, views.userEdit), path(user/list/, views.userList),path(role/add/, views.roleAdd), path(role/delete/, views.roleDelete), path(role/edit/, views.roleEdit), path(role/list/, views.roleList),path(menu/add/, views.menuAdd), path(menu/delete/, views.menuDelete), path(menu/edit/, views.menuEdit), path(menu/list/, views.menuList), 看起来很冗杂而且好多路径都是重复的那么我们可以使用手动分发的方式去处理这种情况 path(user/, ([path(add/, views.userAdd),path(delete/, views.userDelete),path(edit/, views.userEdit),path(list/, views.userList),], None, None)),path(role/, ([path(add/, views.roleAdd),path(delete/, views.roleDelete),path(edit/, views.roleEdit),path(list/, views.roleList),], None, None)),path(menu/, ([path(add/, views.menuAdd),path(delete/, views.menuDelete),path(edit/, views.menuEdit),path(list/, views.menuList),], None, None)), 这样看起来是不是就轻松多了。 2.4、name属性 给一个路由起个名字 根据名字反向生成URL。 from django.contrib import admin from django.urls import path from django_test01 import views# 很多功能很多URL urlpatterns [path(login/, views.login, namev1),path(auth/, views.auth, namev2), ] 其实就是起个名字。 有了名字后以后一般有两处会用到 1在视图函数中生成URL 比如我有一个需求浏览器访问/login在login方法中再跳转到auth方法这时我们的做法是 urls.py from django.contrib import admin from django.urls import path from django_test01 import views# 很多功能很多URL urlpatterns [path(login/, views.login, namev1),path(auth/, views.auth, namev2), ] views.py from django.shortcuts import render, HttpResponse, redirectdef auth(request):return HttpResponse(auth)def login(request):return redirect(/auth/) # 重定向到/auth当我们访问http://localhost:8000/login 时调用了auth方法。 那么说了这么多name的作用在哪呢别急这就告诉你... 我们可以将上面views.py的代码改为 from django.shortcuts import render, HttpResponse, redirectdef auth(request):return HttpResponse(auth)def login(request):from django.urls import reverseurl reverse(v2) # /auth/return redirect(url) 我们可以通过reverse方法来获得namev2的url路径这样写法就灵活多了。 2HTML模板页面上有一个a标签添加xx a href{% url v1 %}添加/a a href{% url v2 %}添加/a 2.5、namespace 辅助name。 主路由 from django.urls import path, re_path, include# 很多功能很多URL urlpatterns [path(api/, include(apps.api.urls,namespacex1)),path(web/, include(apps.web.urls,namespacex2)), ] api/urls.py from django.urls import path, re_path from . import views # 很多功能很多URL urlpatterns [path(login/, views.login,namelogin),path(auth/, views.auth, nameauth), ] web/urls.py from django.urls import path, re_path from . import views # 很多功能很多URL urlpatterns [path(home/, views.home,namehome),path(order/, views.order,nameorder),path(auth/, views.order, nameauth), ] 以后再某个URL或者视图中反向生成 from django.urls import reverse url reverse(x1:login) # /api/login/ url reverse(x1:order) # /web/login/url reverse(x1:auth) # /api/login/ url reverse(x2:auth) # /web/login/ 2.6、namespace扩展 namespace需要设置app_name 主路由 urlpatterns [path(api/, include(apps.api.urls, namespacex1)), ] api/urls.py from django.urls import path, re_path from apps.api import views# 很多功能很多URL urlpatterns [path(login/, views.login, namelogin),path(auth/, views.auth, nameauth), ]app_name api 手动分发 2.7、最后的 / 如何解决 当在settings.py中设置 APPEND_SLASH True path(login/, views.login),http://127.0.0.1:8000/login/ 成功http://127.0.0.1:8000/login django重定向301http://127.0.0.1:8000/login/ 成功 当我们访问http://127.0.0.1:8000/login/ 直接访问成功这不多说 但当我们访问http://127.0.0.1:8000/login 发现django会自动为我们补上最后一个斜杠这是因为请求第一次没带斜杠django会为我们重定向到带斜杠的路径。 path(login, views.login),http://127.0.0.1:8000/login 成功http://127.0.0.1:8000/login http://127.0.0.1:8000/login/ 失败 APPEND_SLASH False path(login/, views.login),http://127.0.0.1:8000/login/ 成功http://127.0.0.1:8000/login 失败 path(login, views.login),http://127.0.0.1:8000/login/ 失败http://127.0.0.1:8000/login 成功 设置了falsedjango不会自动为你加斜杠该是什么就是什么。 2.8、当前匹配对象 有什么用呀 某用户具有一些权限。 permissions [xx,login,account] 某用户具有一些权限。 permissions [login,account]
http://www.yingshimen.cn/news/82100/

相关文章:

  • 哪里可以做外贸网站开通网站必须做域名空间
  • 网站开发的排期网站建设中山
  • 企业内部门户网站建设惠州做百度网站多少
  • 新手如何自己建网站30_10_郑州网站制作
  • 湖北建设银行官方网站首页营销网红
  • 网站 架构设计购物网站怎么做推广
  • 苏州建网站多少钱网络营销培训课程
  • 电子商务网站开发过程论文6wordpress文章伪静态
  • 在线编辑图片的网站有哪些杭州做网站套餐
  • 网站建设有哪种方式社区app网站模板下载
  • 做公司 网站建设做文案策划需要知道些什么网站
  • 东莞网站优化推广方案夜无忧论坛官网
  • 巢湖路桥建设集团有限公司网站国外对于网站开发
  • WordPress建站步骤高端网站建设熊掌号
  • 西安代做毕业设计网站黄岛网站建设多少钱
  • 做网站 用哪个网盘好试用网站如何做
  • 建设阅读网站的目的广告公司怎么找客户资源
  • o2o系统网站建设网站推广怎么优化
  • pc端网站建设哪里有网站开发项目进度安排
  • 精彩的网格布局网站android应用商店
  • 天津网站制作维护固始县住房和城乡规划建设局网站
  • dede无法更新网站主页到降龙网络专业做网站
  • 贵州建设厅网站在建工程查询自己做网站费用
  • 电商的网站怎么做的好北京网上注册公司流程
  • 做一张简单的app网站多钱电商网站项目经验介绍
  • 长沙公司网站开发车培训网站建设
  • 海西电子商务网站建设wordpress主题+插件
  • 网站后台如何做下载连接双鱼儿 网站建设
  • 备案 网站 漏接 电话互联网广告
  • 网站源码设计导航仪企业网站源码