#Django系统

-环境

  -  python3.6

  -  django1.8

  -参考资料

    - [django中文教程](http://python.usyiyi.cn)

    - django架站的16堂课

#环境搭建

-  anaconda+pycharm

-  anaconda使用

    -  conda list:显示当前环境安装的包

    -  conda env list:显示安装的虚拟环境列表

    -  conda create -n env_name python=3.75

    - 激活conda的虚拟环境

      - (Linux)source activate env_name

      - (win) activate env_name

      - pip install django==1.8

# 后台需要的流程

#创建第一个django程序

-   django-admin startproject tulingxueyuan

-   cd tulingxueyuan

-   python manage.py runserver

- pycharm 启动

  - 需要配置

中间层--->路由--->视图(Views)---Models(ORM)

# 路由系统 - urls

- 创建app  

  -  app:负责一个具体业务或者一类具体业务的模块

  -  python manage.py createapp teacher

- conda activate tl_django
- python manage.py startapp  teacher
 
#  路由系统  -  urls
- 创建app  
  - app: 负责一个具体业务或者一类具体业务的模块
  - python manage.py createapp teacher
 
- conda activate tl_django
 
- 路由
  -  按照具体的请求url,导入到相应的业务处理模块的一个功能
  -  django的信息控制中枢
  -  本质上是接受的URL和相应的处理模块的一个映射
  -  在接受URL请求的匹配上使用了RE
  -  URL的具体格式入URLS.PY中所示
- 需要关注两点:
  1、接受的URL是什么,即如何用RE对传入URL进行匹配
  2、已知URL匹配到哪个处理模块
 

- url匹配规则

  -  从上往下一个一个比对

  -  url格式是分级格式,则按照级别一级一级往下比对,主要对应url包含子url的情况

  -  子url一旦被调用,则不会返回到主url

    -  ·/one/two/three/·

  - 正则以r开头,表示不需要转义,注意尖号(^)和美元符号($)

    -  `/one/two/three`  配对 r '^one/'

    -  `/oo/one/two/three`  不配对 r'^one/'

    -  `/one/two/three/`  配对 r'three/$'

    -  `/oo/one/two/three/oo/`  不配对 r 'three/$'

    -  开头不需要有反斜杠

  -  如果从上向下都没有找到合适的匹配内容,则报错

# 2、正常映射

-  把某一个符合RE的URL映射到事物处理函数中去

  -  举例如下:

    ···

    from showeast import views as sv

    urlpatterns = [

     url(r'^admin/', admin.site.urls),

     url(r'^normalmap/', sv.normalmap),  

    ]

    ···

# 3、URL中带参数映射

-  在事件处理代码中需要由URL传入参数,形如 /myurl/param中的param

-  参数都是字符串形式,如果需要整数等形式需要自行转换

-  通常的形式如下:

  ```

    /search/page/432 中的 432需要经常性变换,

  ```

# 4、URL在app中处理

  - 如果所有应用URL都集中    

Django系统的更多相关文章

  1. 使用dockerfile 搭建django系统(nginx+redis+mongodb+celery)

    背景 有需求需要对django系统进行docker化,以达到灵活部署和容灾.该系统基于django 2.2版本开发,数据库采用mongodb,服务器使用nginx,因系统有部分异步任务,异步任务则采用 ...

  2. Python Django系统

    本节内容 路由系统,视图函数,模板引擎,ORM操作 FBV和CBV ORM操作补充 Cookie和Session Ajax入门 1.  Django基本内容整理 1.1 路由系统 Django中路由系 ...

  3. 0004 继承django系统用户表

    1 创建基础模型 在本项目中,所有表都有两个自动产生的完全相同的字段,即创建时间和更新时间,因此,可以创建一个基础模型,让所有的表都来继承这个模型. 找到工程目录下的PublicMethod目录,创建 ...

  4. Linux 部署 Django 系统

    一:安装uwsgi pip3 install uwsgi 二:进入项目目录下,创建uwsgi.ini配置文件 [uwsgi] # 使用nginx连接时使用功能,上线时才使用socket,指定项目执行的 ...

  5. Django(博客系统):基于pycharm如何一个django工程下创建多个app

    背景:通常我们创建一个django系统时,为了把业务模块划分清楚往往会把一个独立的业务模块放到一个app中,如果多个独立的业务模块就会创建多个app,一般情况下为了更好的管理这些app,会把他们都存放 ...

  6. Django(博客系统):重写了auth.User后使用createsupperuser出错解决办法

    背景:重写django的系统User后,使用createsupperuser创建用户失败 由于项目需要扩展django默认新的auth.User系统(添加两个字段:头像.简介等字段),因此就重写了dj ...

  7. [原创]django+ldap实现单点登录(装饰器和缓存)

    前言 参考本系列之前的文章,我们已经搭建了ldap并且可以通过django来操作ldap了,剩下的就是下游系统的接入了,现在的应用场景,我是分了2个层次,第一层次是统一认证,保证各个系统通过ldap来 ...

  8. Django 应用 Buildbot

    Django作者之一 JACOB KAPLAN 所写的buildbot应用在Django系统. 全文总共分为两个部分 1,http://jacobian.org/writing/ci-is-hard/ ...

  9. 为什么选择Django?

    Web开发是Python语言应用领域的重要部分,也是工作岗位比较多的领域.如果你对基于Python的Web开发有兴趣,正打算开始学习使用Python做Web开发,或者已经是一个Web开发者有工作需要, ...

随机推荐

  1. MySQL查询表中某个字段的重复数据

    1. 查询SQL表中某个字段的重复数据 SELECT user_name,COUNT(*) AS count FROM db_user_info GROUP BY user_name HAVING c ...

  2. 微信小程序+java后台

    博主是大四学生,毕业设计做的是微信小程序+java后台.陆陆续续经历了三个月(因为白天要实习又碰上过年玩了一阵子),从对微信小程序一无所知到完成毕设,碰到许多问题,在跟大家分享一下自己的经历和一个小程 ...

  3. sublime的Vue语法高亮插件安装

    1.准备语法高亮插件vue-syntax-highlight. 下载地址: https://github.com/vuejs/vue-syntax-highlight 下载页面并下载: 解开压缩包vu ...

  4. Apache:SSLCertificateFile:文件不存在或为空(操作系统RHEL7)

    配置参数及报错信息(配置了TLS加密后httpd服务无法启动) 我在httpd.conf文件中引用了上面创建的文件.但在那之后,当我尝试RESTART Apache时,我遇到以下错误: 错误:SSLC ...

  5. shell生成rsync同步脚本

    test #!/bin/bash # # Rsync Install Script # Last Updated # ##### modify by Jinayf ##### ######手动修改以下 ...

  6. 快速部署docker

    前言:docker就不用说了,好东西啊.更好的利用服务器的资源,各个服务是相互隔离的,文件的存放更加规律,也好清理空间及数据备份 docker安装-----社区版ce(免费的,另一版本收钱的) 系统: ...

  7. pta编程总结1

    7-1 打印沙漏 (20 分) 本题要求你写个程序把给定的符号打印成沙漏的形状.例如给定17个"*",要求按下列格式打印 所谓"沙漏形状",是指每行输出奇数个符 ...

  8. MongoDB超级简明入门教程

    1.概念篇 MongoDB和MySQL分别作为非关系型数据库和关系型数据库的代表,通过它们之间的对比可以很快的建立起对MongoDB的认知. MongoDB MySQL 数据库(Database) 数 ...

  9. RN页面获取组件位置和大小的方法

    在RN的页面布局和操作中,有时需要获取元素的大小和位置信息,本文从网上抄袭了几个常用方法,以备不时之需. 首先是获取设备屏幕的宽高 import {Dimensions} from 'react-na ...

  10. 删除jar包

    public class TestDelete { private static List<File> files = new ArrayList(); public static voi ...