Django开发入门 – 2.Django的Web应用项目架构

Django开发入门 -- 2.Django的Web应用项目架构

The Project Structure of Django Web Application

By Jackson@ML

1. 创建Django项目

1) 获取安装Python最新版

获取Django是为了安装和使用它,由于Django是基于Python的Web开发框架,因此,需要先行安装Python 3.13.x最新版本。相关获取和安装步骤参照文章:
2025最新版Python 3.13.1安装使用指南

2) 虚拟环境准备

为了在单独的虚拟环境安装,确保django独立稳定运行,需要事先为Django的Web应用项目创建一个虚拟环境。

Venv是包含在Python标准库的一个包,用以创建独立的虚拟环境。

创建虚拟环境共有以下几个步骤:

a) 创建一个django项目文件夹:
bash 复制代码
$ mkdir django_venv
b) 创建虚拟环境

可以执行以下命令,以创建符合用户要求的虚拟环境:

bash 复制代码
$ python3 -m venv django_venv
c) 激活虚拟环境

切换到该项目文件夹的bin子目录,执行以下命令:

bash 复制代码
$ source django_venv/bin/activate
3)获取Django

笔者在前文提到,获取Django可以在Windows或者macOS系统进行下载和安装,获取方式略有不同:

  • 安装Django for Windows
    以管理员身份运行打开Windows命令行窗口(cmd),并执行以下安装命令安装Django:
bash 复制代码
/> pip install django
  • 安装Django for Mac
    同样,需要使用pip安装django,执行以下命令:
bash 复制代码
$ pip install django
4) 创建Django项目

在Terminal中创建项目,使用django-admin命令,并且假定项目名称为django_project:

bash 复制代码
$ django-admin startproject django_project

2. Django的项目架构

前述的startproject是默认的项目模版,由它创建的项目,在Python虚拟环境中,包含如下的文件结构:(以macOS文件系统为例)

3.Django的应用架构

在项目下,由startapp命令创建的,是所谓的django apps,假如以下命令执行:

bash 复制代码
$ django-admin startapp hello_world

那么,其app架构的文件结构如下:

处于开发需要,为了管理服务器,可能还需要编写bash脚本,取名为resetdb.sh(用于重置数据库),以及runserver.sh(启动服务器)。

脚本内容可用Vim编辑器等来编写,以备调用。

其中,resetdb.sh脚本样例可参考如下:

4.更多信息

线上有更多参考信息,可查阅:

  1. Getting started with Django
  2. Django Tutorial
  3. Realpython.com/tutorials/django

相关阅读:

  1. Django开发入门 - 0.Django基本介绍
  2. Django开发入门 - 1.搭建基于Python Web框架Django的IDE开发环境
  3. 2025最新版Python 3.13.1安装使用指南
  4. 2025最新版Anaconda Navigator安装使用指南
  5. 2025最新版PyCharm安装使用指南
  6. 2025最新版Visual Studio Code安装使用指南
相关推荐
万粉变现经纪人2 小时前
如何解决 pip install -r requirements.txt 私有索引未设为 trusted-host 导致拒绝 问题
开发语言·python·scrapy·flask·beautifulsoup·pandas·pip
查士丁尼·绵3 小时前
笔试-九宫格三阶积幻方
python·九宫格·三阶积幻方
l1t5 小时前
DeepSeek辅助利用搬移底层xml实现快速编辑xlsx文件的python程序
xml·开发语言·python·xlsx
大飞记Python5 小时前
部门管理|“编辑部门”功能实现(Django5零基础Web平台)
前端·数据库·python·django
查士丁尼·绵7 小时前
笔试-羊狼过河
python
摸鱼的老谭7 小时前
构建Agent该选Python还是Java ?
java·python·agent
鄃鳕8 小时前
python 字典 列表 类比c++【python】
c++·python
可触的未来,发芽的智生8 小时前
新奇特:黑猫警长的纳米世界,忆阻器与神经网络的智慧
javascript·人工智能·python·神经网络·架构
程序员三藏8 小时前
Jmeter接口测试与压力测试
自动化测试·软件测试·python·测试工具·jmeter·接口测试·压力测试
烛阴8 小时前
用 Python 揭秘 IP 地址背后的地理位置和信息
前端·python