基本目录结构

  • settings

    • ROOT_URLCONF
    • 指定项目的基础路由配置文件
    • DATABASES
    • 指定数据库的配置信息

Django注意点

  • 1 服务器启动以后无需关闭,修改后服务器会自动重启

URL的使用

  • 1 urls.py

    • 默认是在主目录中,主路由配置文件,会包含最基本的地址映射
    • 每个请求到达之后,会由urls.py中的urlpatterns列表中的url()进行匹配
  • 2 在Django2.1中 常用path和re_path来匹配路由
  • 3 url()函数匹配上之后,可能将请求转交给其他的urls.py或视图Views去处理

Django路由分发案例

  • 主路由
from django.contrib import admin
from django.urls import path,include urlpatterns = [ path('admin/', admin.site.urls), path('web/', include('web.urls')), ] 
Python
Copy

  • 应用路由
from django.urls import path
from . import views urlpatterns = [ path('index/', views.index), ] 
Python
Copy

  • 最终访问路径 ip:端口/web/index

HTTPResponse

  • from django.shortcuts import render, HttpResponse
  • 所在模块 django.shortcuts shortcuts在英文中是快捷键的意思
  • 实际案例源码
from django.shortcuts import render, HttpResponse # Create your views here. def index(request): return HttpResponse('index') 
Python
Copy

视图函数

  • def 视图名字(request) request里面保存了所有的请求信息
  • 重新回顾了一个月的PHP,发现PHP真的垃圾
  • 不过也不是全无所获,学会了很多的编程思想,对数据库的操作更进一步

注意

  • 应用路由的开头不要写/ re_path(r'^test/$',views.test)

urls.py

url函数

  • url函数的语法

    • url(regex,views,kwargs=None,name=None)
    • regex 正则表达式,匹配请求的url
    • views 视图处理函数或其他的urls.py
    • kwargs 字典,用来向views传参的,没有参数可以省略
    • name,给url()起别名,主要在模板中使用
  • 案例
urlpatterns = [path('index/', views.index), re_path(r'^test/$',views.test) ] 
Python
Copy

通过URL向views传参

  • http://localhost:8000/goods/商品id
  • 主要有两种方式
    • 使用正则表达式必须掌握
    • 使用字组传参,一个子组是一个参数
    • 想要多个参数的话则可以使用多个子组
    • re_path(r'run/',run_views)
    • re_path(r'run/数字') 如何处理数字
    • re_path(r'run/(\d{2},run_args_views)')用正则表达式分组
    • 访问路径是run/四位数字/两位数字 交给run1_views处理
    • re_path(r'run/(\d{4})/(\d{2}),run1_views')
    • 字典传参
    • re_path(r'^show/',show_views,{'name':'abccc','age':88})
    • 基本上用不到
    • 注意:
      • 视图处理函数中,必须声明参数
      • 参数的名称和位置,必须与字典中的名称和位置保持一致
  • 注意
    • 在url()中,一个子组()表示一个参数
    • 在views.py中,对应的处理函数,要根据url()函数中子组的个数,相应的对应参数,对应的参数要位于request之后
    • 案例
    • re_path(r’run/正则表达式/正则’)—-def view(request,参数1,参数2)
  • 至少说了三遍了,能用python实现的,不要考虑其他语言,优势太大….

Django中的应用

什么是应用

  • 应用就是网站中一个独立的程序模块
  • 在Django中,主目录一般不处理用户的具体请求
  • 主目录主要做的是项目的初始化和设置,以及请求的分发

创建应用

  • 命令 ./manage.py startapp 应用名称
  • 案例
    • python manage.py startapp news
  • 在settings.py中进行设置 INSTALLED_APPS[]把应用名称加在最后面

应用的结构组成

  • migrations目录

    • 存放数据库中间文件(日志文件)
  • __init__.py
    • 初始化文件
  • admin.py
    • 应用的后台管理配置文件
  • apps.py
    • 应用的属性配置文件
  • models.py
    • 模型文件,与数据库有关
  • tests.py
    • 测试模块
  • views.py
    • 视图模块

转载于:https://www.cnblogs.com/gao_x/p/10509310.html

Django笔记(一)相关推荐

  1. Django 笔记6 -- 多表查询

    Django 笔记6 – 多表查询 Django 系列笔记是笔者学习.实践使用 Django 的相关笔记,大量参考了知了课堂的<Django零基础到项目实战>教程. 参考文档: Djang ...

  2. Django 笔记5 -- 数据库

    Django 笔记5 – 数据库 Django 系列笔记是笔者学习.实践使用 Django 的相关笔记,大量参考了知了课堂的<Django零基础到项目实战>教程. 参考文档: Django ...

  3. Django 笔记4 -- 模板

    Django 笔记4 – 模板 Django 系列笔记是笔者学习.实践使用 Django 的相关笔记,大量参考了知了课堂的<Django零基础到项目实战>教程. 参考文档: Django官 ...

  4. Django 笔记3 -- URL

    Django 笔记3 – URL Django 系列笔记是笔者学习.实践使用 Django 的相关笔记,大量参考了知了课堂的<Django零基础到项目实战>教程. 参考文档: Django ...

  5. Django 笔记2 -- Django 项目

    Django 笔记2 – Django 入门 Django 系列笔记是笔者学习.实践使用 Django 的相关笔记,大量参考了知了课堂的<Django零基础到项目实战>教程. 参考文档: ...

  6. Django 笔记1 -- 环境搭建

    Django 笔记1 – 环境搭建 Django 系列笔记是笔者学习.实践使用 Django 的相关笔记,大量参考了知了课堂的<Django零基础到项目实战>教程. 参考文档: Djang ...

  7. Django笔记-5-视图

    2019独角兽企业重金招聘Python工程师标准>>> Django笔记-5-视图 概述 作用 视图接受web请求, 并相应web请求; 本质 视图就是一个Python中的函数 相应 ...

  8. Django笔记-实现用户退出登录(logout)

    Django笔记-实现用户的登出 Django logout()方法介绍: 一.登录login(user,request): 将通过认证的用户的唯一标识信息(主键id),通过哈希加密写入到当前sess ...

  9. Django笔记总结

    1.web框架的本质 web通信流程 web我们这里指的就是通过浏览器去访问服务端,请求页面或者数据的通信方式,属于B/S架构.就是我们常见的网站.浏览器与服务端的通信流程:浏览器客户端发送一个请求信 ...

  10. Django笔记七之ManyToMany和OneToOne介绍

    ManyToMany 是一种多对多的关系,在用途和使用方法上和外键 ForeignKey 类似. 以下是本篇笔记的目录: ManyToMany 的介绍 through 参数 through_field ...

最新文章

  1. symbol lookup error
  2. python表白对话框-python会话框
  3. 内存中的rank跟bank有什么区别
  4. 韩顺平循序渐进学java 第19讲 多维数组
  5. linux下运行lua,linux下配置Lua运行环境
  6. jsp内置对象+Servlet
  7. 两款JSON类库Jackson与JSON-lib的性能对比(新增第三款测试)
  8. JBoss AS 7类加载说明
  9. 【转】设计模式六大原则——SOLID
  10. 经典面试题(33):以下代码将输出的结果是什么?
  11. 9月火气大,能认真写代码么?
  12. 搜索关键字高亮显示,就比微信多个多音字搜索
  13. (一)开机demo测试及测试流程
  14. EBS之JTF_Grid 开发总结
  15. LaTex学习笔记——中文排版
  16. 闲谈绩效考核——来自项目管理群的讨论
  17. Can You Really Backdoor Federated Learning
  18. vue的封装之路(二)-封装一个基于element ui的省市区级联选择器
  19. nvm 卸载详细流程
  20. Activiti流程定义缓存源码分析5-流程缓存

热门文章

  1. 学完python基础知识之后可以做些什么-学完Python基础知识后,你真的会python吗?...
  2. 使用python完成的一个烟花小程序-人人都可以写的可视化Python小程序第二篇:旋转的烟花...
  3. python手机版下载3.7.2-QPython - Python for Android
  4. python安装教程windows-PyCharm 安装教程(Windows)
  5. 用python绘制漂亮的图形-用python绘制图形的实例详解
  6. python爬虫正则表达式实例-3.Python爬虫入门_正则表达式(简单例子)
  7. python三维图形渲染-基于VTK/numpy的三维图像渲染与可视化
  8. python需要php吗-做网站用php还是python
  9. python编程有哪些-python编程工具有哪些
  10. python资料书-关于 Python 的经典入门书籍有哪些?