标签:__init__ 地址 函数 ati rom route conf 其它 响应
> python -V Python 3.7.3 > pip -V pip 20.0.2 from c:\python3\lib\site-packages\pip (python 3.7) > pip install django > python -m django --version 2.2.9
> django-admin startproject along
将会创建一个 along 目录,它的目录结构大致如下:
along/ manage.py along/ __init__.py settings.py urls.py asgi.py wsgi.py
注:
> cd .\along\
> python manage.py startapp hello
将会创建一个 hello 目录,它的目录结构大致如下:
hello/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py
编写 along/views.py
from django.shortcuts import render from django.http import HttpResponse def index(request): return HttpResponse("Hello world~")
这是 Django 中最简单的视图。如果想看见效果,我们需要将一个 URL 映射到它——这就是我们需要 URLconf 的原因了。
(1)在 hello 目录里新建一个 urls.py 文件
from django.urls import path from . import views urlpatterns = [ path(‘‘, views.index), ]
(2)下一步是要在根 URLconf 文件中指定我们创建的 hello.urls 模块。在 along/urls.py 文件的 urlpatterns 列表里插入一个 include(), 如下:
from django.contrib import admin from django.urls import include, path urlpatterns = [ path(‘admin/‘, admin.site.urls), path(‘hello/‘, include(‘hello.urls‘)), ]
注:
(3)path()参数
函数 path() 具有四个参数,两个必须参数:route 和 view,两个可选参数:kwargs 和 name。
route 是一个匹配 URL 的准则(类似正则表达式)。当 Django 响应一个请求时,它会从 urlpatterns 的第一项开始,按顺序依次匹配列表中的项,直到找到匹配的项。
这些准则不会匹配 GET 和 POST 参数或域名;例如:
URLconf 在处理请求 https://www.example.com/myapp/ 时,它会尝试匹配 myapp/
处理请求 https://www.example.com/myapp/?page=3 时,也只会尝试匹配 myapp/。
当 Django 找到了一个匹配的准则,就会调用这个特定的视图函数,并传入一个 HttpRequest 对象作为第一个参数,被“捕获”的参数以关键字参数的形式传入
任意个关键字参数可以作为一个字典传递给目标视图函数
为你的 URL 取名能使你在 Django 的任意地方唯一地引用它,尤其是在模板中。这个有用的特性允许你只改一个文件就能全局地修改某个 URL 模式。
(1)启动服务
> python manage.py runserver 127.0.0.1:9000
注:
(2)网页访问测试
(3)命令行访问
> curl 127.0.0.1:9000/hello
(4)python调用借口
import requests url = "http://127.0.0.1:9000/hello/" result = requests.get(url) print(result.content)
标签:__init__ 地址 函数 ati rom route conf 其它 响应
原文地址:https://www.cnblogs.com/along21/p/12546727.html