1500字长文干货。Django创建和删除应用程序,Python中应用和项目的区别。

Django创建和管理应用
什么是应用
附表是2010年至2019年中国和美国的国民生产总值(GDP),数据来源于网络。Django中的appapp(application)就是应用的意思,应用就是网站中的一个独立的程序模块,是组成Django项目的基本单位,它们协同工作,让项目成为一个整体。当我们的项目足够大的时候,我们将功能单独分成多个app进行开发。举个例子:一个项目project就相当于 某某大学, 一个app就相当于xx学院。
在Django中,主目录一般不处理具体的请求,主目录一般要处理的是项目的初始化操作以及请求的分发(分布式请求处理)。而具体的请求是由各个应用去处理。
应用程序与框架进行交互,提供特定的功能,并可在不同的项目中加以复用。我们可以将项目视为一个站点,其中包含了多个应用程序,例如:博客、wiki或者论坛等,同时还可以被其他项目予以复用。
思维导图在下面。
创建应用
在项目的根目录中,执行startapp 命令,创建应用程序。
python3 manage.py startapp name [directory]
在当前目录或给定目标中为给定应用名称创建 Django 应用目录结构。默认情况下,新目录包含一个 models.py文件和其他应用程序模板文件。如果只给出应用名称,则应用目录将创建在当前工作目录中。如果提供了可选的目标,Django 将使用该现有目录而不是创建一个新目录。您可以使用 '.' 表示当前工作目录。
例如:
python3 manage.py startapp first_website_app
--template TEMPLATE
提供包含自定义应用程序模板文件的目录路径,或包含应用程序模板文件的未压缩存档 ( .tar) 或压缩存档 ( .tar.gz, .tar.bz2, .tar.xz, .tar.lzma, .tgz, .tbz2, .txz, .tlz, .zip) 的路径。
例如,这将在创建myapp应用程序时在给定目录中查找应用程序模板:
python3 manage.py startapp --template=/first_website_app/my_app_template myapp
Django 还将接受带有应用程序模板文件的压缩档案的 URL ( http, https, ftp),即时下载和提取它们。
例如,利用 GitHub 的功能将存储库公开为 zip 文件,您可以使用如下 URL:
python3 manage.py startapp --template=https://github.com/githubuser/django-app-template/archive/master.zip myapp
--extension EXTENSIONS, -e EXTENSIONS
指定应使用模板引擎呈现应用模板中的哪些文件扩展名。默认为py.
--name FILES, -n FILES
--extension指定应使用模板引擎呈现应用程序模板中的哪些文件(除了那些匹配的文件 )。默认为空列表。
--exclude DIRECTORIES, -x DIRECTORIES
应用程序的基本结构
应用程序基本结构包括模型、视图、模板、以及URL等。各文件文件主要功能说明如下:
1.migrations 目录:存放数据库的中间文件,该目录中包含了应用程序的数据迁移。迁移可使Django跟踪模块变化内容,并相应的同步数据库。
2.__init__.py:应用的初始化文件
3.admin.py:应用的后台管理配置文件,可在该文件中注册模型,并将其纳入至Django管理站点中——使用Django管理站点为可选项。
4.apps.py:应用的属性配置文件,该文件中包含了博客应用程序中的主要配置内容。
5.models.py:Models 与 模型相关的映射文件,所有的Django应用程序都需要设置该文件,其中包含了应用程序的数据模型;但该文件也可被置空。
6.tests.py:应用的单元测试文件,可在该文件中添加应用程序测试。
7.views.py:定义视图处理函数的文件,该文件中包含了应用程序逻辑内容,每个视图接收一个HTTP请求,经处理后返回一个响应结果。
注册应用
要使用模型,必须在settings.py中进行注册,让Django将应用程序包含到项目中。在first_website_env/bin/first_website/settings.py文件中添加红色框线标记内容。
访问应用
为了处理各个应用中的请求路由,需要在urls.py文件中添加红色框线标记内容。
from django.contrib import admin
from django.urls import path
from first_website_app import views #需要添加的
urlpatterns = [
path('admin/', admin.site.urls),
path('first_website_app/',views.index) #需要添加的
]
删除应用
时代在发展,技术在进步,总有应用要退出历史,这时候就得删除应用。共分为三步:删除settings.py 文件中INSTALLED_APPS下的应用配置项;删除该应用程序中模型的任何数据库表。python3 manage.py flush;完全删除应用程序目录。
管理应用命令工具
除了演示用的“python3 manage.py”外,还可以使用django-admin和python3 -m django命令创建和管理应用。
通常,在处理单个 Django 项目时, manage.py比django-admin好用;如果需要在多个 Django 设置文件之间切换,请使用django-admin with DJANGO_SETTINGS_MODULE或--settings命令行选项。
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。
评论