Django框架入门:如何创建项目与应用 | Django教程
- Python
- 2025-07-30
- 1315
Django框架入门:如何创建项目与应用
本教程将带你一步步学习如何在Django框架中创建项目和应用。Django是一个高级Python Web框架,它鼓励快速开发和简洁实用的设计。通过本教程,你将掌握Django的核心概念和基本操作。
环境准备
在开始之前,请确保你的系统已安装:
- Python 3.6或更高版本
- pip(Python包管理工具)
安装Django(推荐使用最新稳定版):
pip install django
创建Django项目
Django项目是网站的容器,包含所有配置和多个应用。
打开终端(Windows)或命令行(Mac/Linux),执行以下命令:
django-admin startproject myproject
这将在当前目录创建名为myproject的Django项目。
项目结构解析
进入项目目录查看结构:
myproject/
├── manage.py # 项目管理脚本
└── myproject/ # 项目配置目录
├── __init__.py
├── asgi.py # ASGI配置
├── settings.py # 项目设置
├── urls.py # 主URL路由配置
└── wsgi.py # WSGI配置
关键文件说明:
- manage.py:命令行工具,用于与项目交互
- settings.py:项目配置文件(数据库、应用、中间件等)
- urls.py:URL声明文件,网站的"目录"
运行开发服务器
验证项目是否创建成功:
cd myproject
python manage.py runserver
在浏览器中访问 http://127.0.0.1:8000,你将看到Django的欢迎页面:
创建Django应用
应用是Django项目的功能模块,一个项目可以包含多个应用。
在项目根目录(manage.py所在目录)执行:
python manage.py startapp myapp
这将创建名为myapp的Django应用。
应用结构解析
新创建的应用目录结构如下:
myapp/
├── __init__.py
├── admin.py # 管理后台配置
├── apps.py # 应用配置
├── migrations/ # 数据库迁移目录
│ └── __init__.py
├── models.py # 数据模型定义
├── tests.py # 测试用例
└── views.py # 视图函数
关键文件说明:
- models.py:定义数据库模型(MVC中的Model)
- views.py:处理业务逻辑(MVC中的Controller)
- admin.py:配置Django管理后台
- migrations/:存放数据库迁移文件
注册应用
创建应用后,需要将其添加到项目设置中:
打开myproject/settings.py文件,找到INSTALLED_APPS
列表,添加你的应用:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'myapp', # 添加这行
]
后续步骤
现在你已经成功创建了Django项目和应用,接下来可以:
1. 创建视图
在views.py中编写处理请求的函数
2. 配置URL
在urls.py中设置URL到视图的映射
3. 定义模型
在models.py中创建数据库模型
4. 创建模板
在templates/目录中编写HTML模板
总结
在本教程中,我们学习了:
- 使用
django-admin startproject
创建Django项目 - 理解Django项目的基本结构
- 使用
python manage.py runserver
运行开发服务器 - 使用
python manage.py startapp
创建Django应用 - 理解Django应用的核心组件
- 在settings.py中注册应用
现在你已经掌握了Django项目和应用的基础创建流程,可以开始构建你的Web应用了!
常见问题
Q: 项目和应用有什么区别?
A: 项目是网站的容器,包含全局配置;应用是具体的功能模块,可重用。
Q: 一个项目可以包含多个应用吗?
A: 是的,Django项目通常由多个应用组成,每个应用负责特定功能。
Q: 如何命名Django项目和应用?
A: 项目名应具有描述性(如myblog),应用名应为单数名词(如posts, users)。
本文由DangChao于2025-07-30发表在吾爱品聚,如有疑问,请联系我们。
本文链接:https://521pj.cn/20256851.html
发表评论