首页 Python正文

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

sanrenxing Python 2022-01-28 822 0 | 文章出自:https://mp.weixin.qq.com/s?__biz=MzI5OTAwNjMzMg==&mid=2694958647&idx=1&sn=e4247dfe6950298e5fda398c2d2391c3&chksm=c9c84e24febfc7324cc4526adb5eb0ab70778b04d558178551bda9f356503839e329fd4c21a2&token=841015793&lang=zh_CN#rd django搭建网站创建和管理应用

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命令行选项。



版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论