• Django 子程序


    在Web应用中,通常有一些业务功能模块是在不同的项目中都可以复用的,故在开发中通常将工程项目拆分为不同的子功能模块,各功能模块间可以保持相对的独立,在其他工程项目中需要用到某个特定功能模块时,可以将该模块代码整体复制过去,达到复用。

    Django的视图编写是放在子应用中的

    创建子应用

      python manage.py startapp 子应用名称   #manage.py是创建工程时自动生成的管理文件

      admin.py 文件跟网站的后台管理站点配置相关。

      apps.py 文件用于配置当前子应用的相关信息。

      migrations 目录用于存放数据库迁移历史文件。

      models.py 文件用户保存数据库模型类。

      tests.py 文件用于开发测试用例,编写单元测试。

      views.py 文件用于编写Web应用视图。

    注册安装子应用

      创建出来的子应用目录文件虽然被放到了工程项目目录中,但是django工程并不能立即直接使用该子应用,需要注册安装后才能使用。

      在工程配置文件settings.py中,INSTALLED_APPS项保存了工程中已经注册安装的子应用,初始工程中的INSTALLED_APPS如下:

      

     添加好应用后在子应用程序内创建好设定路由文件,路由文件名可以自定义

    路由文件:

    from django.urls import path,re_path
    
    #导入views内写好的方法
    from myapp.views import myapp_index
    
    #写路由配置列表,注意路由尽量不要于主应用路由重名否则会冲突
    urlpatterns = [
        path("",myapp_index),
    ]

    主应用路由包含子路由(include)

    """mysite URL Configuration
    
    The `urlpatterns` list routes URLs to views. For more information please see:
        https://docs.djangoproject.com/en/2.0/topics/http/urls/
    Examples:
    Function views
        1. Add an import:  from my_app import views
        2. Add a URL to urlpatterns:  path('', views.home, name='home')
    Class-based views
        1. Add an import:  from other_app.views import Home
        2. Add a URL to urlpatterns:  path('', Home.as_view(), name='home')
    Including another URLconf
        1. Import the include() function: from django.urls import include, path
        2. Add a URL to urlpatterns:  path('blog/', include('blog.urls'))
    """
    from django.contrib import admin
    #使用include模块
    from django.urls import path,include
    urlpatterns = [
        #第一个参数为前缀 直接包含子应用的路由文件
        path('admin/', admin.site.urls),
        path('myapp',include('myapp.urls')),
    ]
  • 相关阅读:
    Vue--Vue-CLI服务命令、项目结构、自定义配置
    Vue--Vue-CLI创建项目
    Git
    前后端vue和django配置
    Django REST framework(DRF)
    Vue各种配置
    Vue组件
    vue项目搭建
    VUE基础
    Django中间件详解
  • 原文地址:https://www.cnblogs.com/Niuxingyu/p/10367188.html
Copyright © 2020-2023  润新知