创建子应用
创建
我们可以在项目的根目录下,调用命令行,创建子应用:
# 创建子应用的常见命令:
python manage.py startapp 子应用名称
- python : python3 解释器
- manage.py : 上一章创建项目工程的时候,生成的管理整个项目的文件
- startapp : 创建子应用的指令
- 子应用名称 : 这个名称可以自己随意定,一般会根据项目需求来指定.
在刚才创建的 demo 工程中,想要创建一个用户 users 子应用模块,可执行:
执行后,可以看到工程目录中多出了一个名为 users 的子目录。
子应用目录说明
查看此时的工程目录,结构如下:
admin.py 文件跟网站的后台管理站点配置相关。
apps.py 文件用于配置当前子应用的相关信息。
migrations 目录用于存放数据库迁移历史文件。
models.py 文件用户保存数据库模型类。
tests.py 文件用于开发测试用例,编写单元测试。
views.py 文件用于编写Web应用视图。
配置子应用
settings 中默认的配置信息
添加子应用到 settings 中
例如:
将刚创建的 users 子应用中 apps.py 文件的信息
( users.apps.UsersConfig ),添加到 INSTALLED_APPS 中,如图所示:
创建视图
创建
打开刚创建的 users 模块,在 views.py 中编写视图代码。
# 从 django.http 模块中导入 HttpRespose from django.http import HttpResponse def index(request): """ index视图 :param request: 包含了请求信息的请求对象 :return: 响应对象 """ return HttpResponse("hello the world!")
说明:
视图函数的第一个传入参数必须定义,用于接收 Django 构造的包含了请求数据的 HttpReqeust 对象,通常名为 request。
视图函数的返回值必须为一个响应对象,可以将要返回的字符串数据放到一个 HTTPResponse 对象中。
定义路由URL
1) 在子应用中新建一个 urls.py 文件保存该应用的路由,一般我们把子应用中的路由称为: 子路由
把项目中总体的 urls.py 路由文件称为总路由.
2) 在 users.urls.py 文件中定义子路由信息
从 urls 模块中导入 re_path from django.conf.urls re_path 从当前目录导入我们的视图模块 views from . views urlpatterns 是被 django 自动识别的路由列表变量 urlpatterns = [ 每个路由信息都需要使用 url 函数来构造 url (路径,视图) re_path(r'^index/$',views.index),]
3) 在工程总路由 demo / urls.py 中添加数据:
导入 include 函数 from django.contrib admin from django.urls path,include urlpatterns = django默认就有的路由配置信息,第一行不用管: path(admin/ 添加如下的路由配置信息: path(rusers/',include(users.urls)),]
使用 include 来将子应用 users 里的路由文件( urls.py )包含到工程总路由中 r^users/' 决定了 users 子应用的所有路由都以 /users/ 开头,如我们刚定义的视图 index, 其最终的完整访问路径为 /users/index/. 这里可以不写总路由的. 例如: r'',那么我们访问 index 的完整路径就是: /index/ 了.
4) 启动运行
重新启动 django 程序
python manage.py runserver
在浏览器中输入网址 http://127.0.0.1:8000/users/index/ 可看到返回的信息
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。