首页
技术小册
AIGC
面试刷题
技术文章
MAGENTO
云计算
视频课程
源码下载
PDF书籍
「涨薪秘籍」
登录
注册
Django简介与安装
第一个Django项目
Django项目结构解析
模型与数据库设计
Django ORM基础操作
视图与URL配置
模板系统快速入门
表单处理与验证
会话与用户认证
中间件与信号机制
静态文件与媒体管理
Django后台管理
Django通用视图与类视图
数据迁移与模型变更
单元测试与测试驱动开发
错误处理与日志记录
安全性与权限控制
国际化与本地化
Django性能优化
部署与运维
Django源码解析(一):启动流程
Django源码解析(二):请求处理
Django源码解析(三):响应生成
自定义标签与过滤器
高级数据库操作
RESTful API设计与实现
异步任务与消息队列
缓存策略与应用
Django与第三方服务集成
扩展插件开发
数据导入导出与迁移
多数据库支持与数据库路由
高并发与负载均衡
Docker容器化部署
微服务架构与Django
Django与前端框架集成
性能监控与调优
安全性与攻击防范
Django最佳实践
Django生态圈及发展趋势
实战项目一:搭建个人博客系统
实战项目二:开发在线投票系统
实战项目三:构建企业级后台管理系统
实战项目四:实现文件上传与下载功能
实战项目五:开发实时聊天室
实战项目六:构建RESTful API接口
实战项目七:实现用户权限管理系统
实战项目八:开发微信小程序后台
实战项目九:构建电商平台(一):商品管理
实战项目九:构建电商平台(二):购物车与订单
实战项目九:构建电商平台(三):支付与物流
实战项目十:搭建分布式爬虫系统
实战项目十一:实现数据可视化与分析
实战项目十二:开发在线教育平台(一):课程管理
实战项目十二:开发在线教育平台(二):视频点播
实战项目十二:开发在线教育平台(三):直播互动
实战项目十三:构建社交网络(一):用户关系
实战项目十三:构建社交网络(二):信息流与推荐
实战项目十三:构建社交网络(三):朋友圈与评论
实战项目总结与拓展
当前位置:
首页>>
技术小册>>
Django框架入门指南
小册名称:Django框架入门指南
### 第一个Django项目 在《Django框架入门指南》中,“第一个Django项目”这一章是引领读者踏入Django世界的关键一步。通过亲手创建一个简单的Django项目,你将掌握Django框架的基本结构、项目与应用的创建方法、以及如何使用Django自带的开发服务器来运行你的项目。下面,我们将一步步引导你完成这个过程。 #### 一、环境准备 在开始之前,请确保你的计算机上已安装了Python和pip(Python的包管理工具)。Django支持Python 3.x版本(具体版本请参考Django官方文档,以获取最新的兼容性信息)。 1. **安装Python**:如果你还没有安装Python,可以从Python官网(https://www.python.org/downloads/)下载并安装。 2. **安装Django**:打开命令行工具(在Windows上是CMD或PowerShell,Mac和Linux上是Terminal),输入以下命令来安装Django: ```bash pip install django ``` 安装完成后,你可以通过运行`django-admin --version`来检查Django是否安装成功,以及安装的版本。 #### 二、创建项目 Django项目是一系列Django应用的集合,以及一个用于管理这些应用的项目级设置的集合。现在,我们将创建一个新的Django项目。 1. **创建项目**:在命令行中,导航到你希望存放Django项目的目录,然后运行以下命令来创建一个名为`myproject`的新项目(你可以根据需要更改项目名称): ```bash django-admin startproject myproject ``` 这个命令会在当前目录下创建一个名为`myproject`的文件夹,里面包含了Django项目的初始结构,包括一些默认的文件和文件夹,如`manage.py`、`myproject`文件夹(包含项目的设置文件`settings.py`等)。 2. **了解项目结构**: - `manage.py`:Django的命令行工具,用于执行各种项目级命令,如运行服务器、进行数据库迁移等。 - `myproject/`:项目的实际Python包,包含项目的配置和应用的设置。 - `__init__.py`:让Python将此目录视为一个Python包。 - `settings.py`:包含项目的所有配置信息,如数据库配置、应用列表等。 - `urls.py`:项目的URL声明,Django的路由系统。 - `wsgi.py`:WSGI兼容的Web服务器入口,用于部署。 #### 三、创建应用 Django项目可以包含多个应用,每个应用都是一个Python包,遵循Django的特定约定。应用可以包含模型(Models)、视图(Views)、模板(Templates)和表单(Forms)等。现在,我们来创建一个简单的应用。 1. **创建应用**:在项目目录下(即与`manage.py`同级的目录),运行以下命令来创建一个名为`polls`的新应用: ```bash python manage.py startapp polls ``` 这将创建一个名为`polls`的文件夹,包含一些默认的文件和文件夹,如`models.py`(用于定义数据库模型)、`views.py`(用于定义视图函数)、`admin.py`(用于定义Django管理界面的内容)、`migrations/`(用于存放数据库迁移文件)等。 2. **注册应用**:为了让Django知道我们的`polls`应用,需要在项目的设置文件中注册它。打开`myproject/settings.py`,在`INSTALLED_APPS`列表中添加`'polls'`: ```python INSTALLED_APPS = [ ... 'polls', ] ``` #### 四、定义模型 Django是一个高级Python Web框架,它鼓励快速开发和干净、实用的设计。Django遵循MVC(模型-视图-控制器)设计模式的变种,称为MVT(模型-视图-模板)。首先,我们来定义一个简单的模型。 1. **编辑模型**:打开`polls/models.py`,定义一个表示民意调查的模型。假设我们想要一个简单的民意调查应用,可以创建和显示问题,每个问题可以有多个选项,用户可以投票给这些选项中的一个。 ```python from django.db import models class Question(models.Model): question_text = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') def __str__(self): return self.question_text class Choice(models.Model): question = models.ForeignKey(Question, on_delete=models.CASCADE) choice_text = models.CharField(max_length=200) votes = models.IntegerField(default=0) def __str__(self): return self.choice_text ``` 这里定义了两个模型:`Question`和`Choice`。每个`Question`可以有多个`Choice`,通过外键关系实现。 2. **迁移数据库**:为了让Django知道我们的模型更改,并据此更新数据库,我们需要运行迁移命令。首先,生成迁移文件: ```bash python manage.py makemigrations ``` 然后,应用这些迁移来更改数据库: ```bash python manage.py migrate ``` #### 五、创建视图 视图函数是Django应用的核心,它们负责处理Web请求并返回Web响应。现在,我们来为`polls`应用创建一些基本的视图。 1. **编辑视图**:打开`polls/views.py`,添加一些视图函数来处理民意调查数据的显示和提交。 ```python from django.shortcuts import render from .models import Question def index(request): latest_question_list = Question.objects.order_by('-pub_date')[:5] context = {'latest_question_list': latest_question_list} return render(request, 'polls/index.html', context) # 你可以继续添加其他视图函数,如显示单个问题、提交投票等。 ``` 2. **创建模板**:视图函数需要渲染模板来生成HTML。在`polls`目录下创建一个名为`templates`的文件夹(如果还没有的话),并在其中创建一个`polls`子文件夹(为了保持模板的组织结构)。然后,在`polls/templates/polls/`目录下创建`index.html`模板文件,并添加一些基本的HTML代码来显示问题列表。 #### 六、配置URL 现在,我们需要将视图函数与URL模式关联起来,这样用户就可以通过访问特定的URL来看到我们定义的视图了。 1. **编辑URL配置**:打开`myproject/urls.py`(项目的URL配置文件),引入`include`函数来包含`polls`应用的URL配置。然后,在`polls`应用目录下创建一个`urls.py`文件,并定义该应用的URL模式。 在`polls/urls.py`中: ```python from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), # 可以继续添加其他URL模式 ] ``` 在`myproject/urls.py`中,包含`polls`应用的URL配置: ```python from django.contrib import admin from django.urls import include, path urlpatterns = [ path('admin/', admin.site.urls), path('polls/', include('polls.urls')), ] ``` #### 七、运行开发服务器 一切准备就绪后,你可以使用Django自带的开发服务器来查看你的应用了。 1. **运行服务器**:在项目根目录下(即包含`manage.py`的目录),运行以下命令来启动开发服务器: ```bash python manage.py runserver ``` 默认情况下,服务器会运行在`http://127.0.0.1:8000/`。你可以通过浏览器访问这个地址来看到你的Django项目。 2. **访问应用**:在浏览器中访问`http://127.0.0.1:8000/polls/`,你应该能看到`index`视图渲染的页面,显示了你定义的问题列表。 至此,你已经成功创建了第一个Django项目,并创建了一个简单的民意调查应用。这仅仅是Django强大功能的冰山一角,接下来,你可以继续探索Django的模板系统、表单处理、用户认证、数据库迁移等更多高级功能。祝你在Django的旅程中取得丰硕的成果!
上一篇:
Django简介与安装
下一篇:
Django项目结构解析
该分类下的相关小册推荐:
Django快速开发实战
Django零基础入门