0019 python django 08 django3.0 视图 urls.py 一个网站服务 处理 响应 过程

以下为学习笔记,用来备忘、交流

工具:树莓派 3B+ / Raspberry Pi 3B+
系统:带桌面的Raspbian Buster 基于Debian-Buster的桌面图像
Raspbian Buster with desktop Image with desktop based on Debian Buster
Release date:2019-09-26
Python 3.7.3 (default, Apr 3 2019, 05:39:12)
数据库:mariadb-server-10.0
Django: 3.0.2

视图

一个网站服务处理响应过程如下:

  1. 假设用户在浏览器输入网址https://www.123.com/abc/e 或(192.168.1.12/abc/e)
  2. https://www.123.com和192.168.1.12是有域名或IP确定的,本次不做研究,总之输入https://www.123.com就能在网络上找到自己配置的这个Django服务器
  3. Django 可以接收到域名或IP后面的信息:abc/e
  4. Django Python程序按照urls.py的定义一行一行的匹配上面的那个地址(abc/e)
  5. 匹配成功后,记录这个地址对应的方法名称,运行这个方法,这个过程在views.py里编写处理过程
  6. 匹配失败后,返回400错误或其他错误,有Django 默认的错误处理和显示,当然也可自定义错误的显示内容

url

下图是建好的文件tree
文件路径01

主要思路是这样:在项目目录原本就有urls.py文件,一个项目多个应用的话里面会有太多的路径,所以把每个应用的urls放到每个应用里,在项目文件下的urls.py配置一下引到不同的应用里,以后修改只需要到自己的应用中修改自己的urls.py就可以了

  1. 在应用中新建urls.py文件(可以将项目中的文件复制进去,再做修改)
  2. 配置项目中的urls.py文件
  3. 配置好的项目中的urls.py如下(注意我用的Django版本: 3.0.2)
from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('yingyong01.urls'))
]
  1. 配置好的应用中的urls.py如下(注意我用的Django版本: 3.0.2)
#from django.contrib import admin
from django.urls import path
from . import views

urlpatterns = [
    #path('admin/', admin.site.urls),
    path('',views.index),
    path('<int:shebei_id>/',views.show),
    path('<int:shebei_id>/postj',views.postj),
    #path('2/',views.show)
    path('news/',views.news),
    path('news/posts',views.posts),
]
  • 代码中,<int:shebei_id>/ 的“shebei_id”是变量,“<int: >”表示程序需要取这个值,这个值是int整数形。
  1. 别忘了,在settings.py文件中通过ROOT_URLCONF指定根级url的配置。项目文件中的settings.py需要配置这一项“ROOT_URLCONF ”
ROOT_URLCONF = 'xiangmu01.urls'
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值