• 技术文章 >Python框架 >Django

    django中app是什么意思

    silencementsilencement2020-09-08 09:15:29原创5371

    Django中的app(application)就是应用的意思,当我们的项目足够大的时候,我们将功能单独分成多个app进行开发。

    Django中的app

    (视频教程推荐:django视频教程

    app(application)就是应用的意思,当我们的项目足够大的时候,我们将功能单独分成多个app进行开发。举个例子:

    一个项目project就相当于 某某大学, 一个app就相当于xx学院。

    Django本身是鼓励开发者进行相对独立的项目开发的,因此我们建议以后使用app进行开发。

    Project

    来创建一个新的project,之后我们可以在当前目录下看到如下目录结构:

    mysite/
    
        manage.py
    
        mysite/
    
            __init__.py
    
            settings.py
    
            urls.py
    
            wsgi.py

    其中manage.py是在开发web项目时经常用到的工具,如:python manage.py runserver localhost:8000 ; python manage.py syndb 等等,而在内部的mysite目录下放着四个py文件,其中init.py用于说明内部的mysite目录是一个python模块,打开settings.py文件,我们可以看到一些基本的配置信息,包括数据库配置,时区,安装的APP,中间件,日志配置,以及一些基本的目录配置等,其本质上相当于一个基本的web工程的全局配置。urls.py文件中包含一个urlpatterns变量,其实它就是一个URL Dispacher(URL分派器),用于在URL和实际的view之间建立一个映射。

    App

    在创建完project之后,我们可以通过命令:python manage.py startapp polls创建一个名叫polls的app,然后整个目录结构变成如下所示:

    mysite/
    
        manage.py
    
        mysite/
    
            __init__.py
    
            settings.py
    
            urls.py
    
            wsgi.py
    
        polls/
    
            __init__.py
    
            models.py
    
            views.py
    
            test.py

    很显然,上述红色部分是多出来的,即运行上述命令后做的一些事情, 其中 init.py用于说明polls目录是一个python模块,models.py中包含一系列的模型类,每个模型类对应数据库中的一个表,这之间的映射由Django来做,有关数据库的配置在mysite/settings.py中。

    而views.py中包含的是对各个请求的处理逻辑,前面说的URL Dispacher即将URL请求映射到这个文件中的函数或类方法上。同时可以在polls目录下创建template目录,然后将前台的html,css,script等内容放置在这个目录下,并在setttings.py文件添加相应的配置信息。所以,我们其实可以看到APP相当于一个相对独立的功能模块,其遵循的设计理念是MVT(类似MVC);在一个大型的Project中,可以包含很多APP,而且每个APP可以在不同的Project中复用,这也符合Django的编程理念,即:不要做重复的事情。

    相关教程推荐:python web教程

    专题推荐:django app
    品易云
    上一篇:怎么更新django最新版本 下一篇:django注释有什么作用

    相关文章推荐

    • 如何查看django的版本

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网