Django子应用创建

一、作用

  • 进行复用
  • 将工程项目拆分为不同的子功能模块
  • 各功能模块间可以保持相对独立
  • 可以将模块代码整体复制过去

二、创建步骤

  • 创建子项目
    • 推荐子应用名为小写复数形式,不要使用中文
  • python manage.py startapp 子应用名 # python manage.py startapp projects
  • 注册
    • 在全局配置文件setting.py中的INSTALLED_APPS列表添加子应用:子应用名.apps.子应用名首字母大写Config
  • 创建子应用视图
  • 配置路由
    • 前端获取一个页面,其实就相当于调用后端的一个函数
    • 路由起到承接前端和后端的交互
    • 路由表:url与后端视图函数是一一对应的关系
    • 使用规则:在urls.py模块下的urlpatterns字段列表中定义
    • e.g 如果url第一部分匹配成功,那么会将url剩下的部分拿到子路由中
    • path('page', include('projects.urls'))
  • 匹配规则
    • 从列表的第一个元素开始(从上到下)开始匹配
    • 一但匹配成功,会自动调用path第二个参数所指定的视图函数
    • 一但匹配成功后,不会再往下匹配
    • 如果匹配不成功,会返回一个状态码为404的页面
    • url路由信息,推荐使用“/”结尾
    • 可以在子应用中定义子路由,子应用名/urls.py中来定义
    • 可以使用include函数来加载子路由,第一个参数为字符串(“子应用名.urls”)
    • 如果url第一部分匹配成功,那么会将url剩下的部分拿到子路由中去匹配

三、子应用目录和文件说明

projects/migrations:存放数据库迁移脚本和迁移历史记录等信息

projects/admin.py:admin后台站点的相关配置(需要后台站点时才会用到)

projects/apps.py:为app label的相关配置

projects/models.py:存放数据库模型相关信息

projects/tests.py:对当前的子应用进行自测的单元测试

projects/views.py:子应用视图,定义业务逻辑

四、录屏示例

https://blog-static.cnblogs.com/files/xiaogongjin/Django%E9%A1%B9%E7%9B%AE%E5%88%9B%E5%BB%BA%E5%AD%90%E5%BA%94%E7%94%A8.gif

posted @ 2020-06-17 16:46  小公瑾  阅读(515)  评论(0编辑  收藏  举报