当前位置: 首页 > news >正文

Django 详细入门介绍

Django 详细入门介绍

1. 什么是 Django?

Django 是一个开源的、用 Python 编写的 Web 框架。它遵循了“快速开发”和“不要重复自己”(DRY)的设计原则,旨在简化复杂的 Web 开发。Django 提供了多种强大的功能模块,如认证系统、管理后台、ORM(对象关系映射)、模板系统等,使开发人员能够更高效地构建和维护复杂的 Web 应用程序。

2. 安装 Django

在开始使用 Django 之前,需要先安装它。可以通过以下命令来安装:

pip install django

要验证安装是否成功,可以使用以下命令查看 Django 的版本:

django-admin --version
3. 创建第一个 Django 项目

要创建一个新项目,可以使用 django-admin 工具:

django-admin startproject myproject

这会创建一个包含以下目录结构的项目:

myproject/manage.pymyproject/__init__.pysettings.pyurls.pyasgi.pywsgi.py
  • manage.py:一个命令行工具,用于管理项目。
  • settings.py:项目的配置文件。
  • urls.py:URL 路由配置。
  • wsgi.pyasgi.py:项目的入口文件,分别用于 WSGI 和 ASGI 服务。
4. 启动开发服务器

Django 自带一个简单的开发服务器,方便开发时使用。可以通过以下命令启动:

python manage.py runserver

默认情况下,服务器会在 http://127.0.0.1:8000/ 运行。打开浏览器访问该地址,你应该会看到 Django 的欢迎页面,表示服务器已成功运行。

5. 创建应用程序

Django 项目由多个“应用程序”组成。要创建一个新的应用程序,运行:

python manage.py startapp myapp

这会创建一个包含以下内容的目录:

myapp/__init__.pyadmin.pyapps.pymodels.pytests.pyviews.pymigrations/
  • admin.py:用于注册模型到 Django 管理后台。
  • models.py:定义数据模型。
  • views.py:定义视图函数或类。
  • migrations/:存放数据库迁移文件。
6. 数据模型和迁移

models.py 中定义数据模型,例如:

from django.db import modelsclass Article(models.Model):title = models.CharField(max_length=200)content = models.TextField()published_date = models.DateTimeField(auto_now_add=True)def __str__(self):return self.title

创建模型后,运行以下命令生成迁移文件:

python manage.py makemigrations

然后应用迁移到数据库:

python manage.py migrate
7. 注册模型到管理后台

admin.py 中注册模型:

from django.contrib import admin
from .models import Articleadmin.site.register(Article)

访问 http://127.0.0.1:8000/admin/ 并登录后,就可以在后台界面中管理 Article 模型的数据。

8. 编写视图和路由

views.py 中定义视图函数:

from django.http import HttpResponsedef home(request):return HttpResponse(\"Hello, Django!\")

urls.py 中添加路由:

from django.contrib import admin
from django.urls import path
from myapp.views import homeurlpatterns = [path('admin/', admin.site.urls),path('', home, name='home'),
]

访问 http://127.0.0.1:8000/,页面会显示“Hello, Django!”。

9. 使用模板引擎

Django 的模板系统允许动态生成 HTML。创建 templates 目录,并添加 home.html

<!DOCTYPE html>
<html>
<head><title>Welcome</title>
</head>
<body><h1>{{ message }}</h1>
</body>
</html>

修改 views.py

from django.shortcuts import renderdef home(request):return render(request, 'home.html', {'message': 'Hello, Django with Templates!'})
10. 小结

通过本文,你了解了如何安装和配置 Django,创建应用程序,以及编写简单的视图和路由。Django 提供了强大的功能和丰富的扩展,适合用于快速开发 Web 应用。掌握这些基础知识后,你可以进一步学习如何使用 Django 的表单系统、用户认证、REST API 开发等高级功能。

开始你的 Django 之旅吧!


http://www.lryc.cn/news/481097.html

相关文章:

  • 万字长文解读深度学习——循环神经网络RNN、LSTM、GRU、Bi-RNN
  • HDR视频技术之二:光电转换与 HDR 图像显示
  • 【Linux】Linux入门实操——vim、目录结构、远程登录、重启注销
  • Redis的缓存问题与应对策略
  • Java项目实战II基于Spring Boot的智慧生活商城系统的设计与实现(开发文档+数据库+源码)
  • 每日一题之成绩排序
  • QT Widget:使用技巧
  • 深入Zookeeper节点操作:高级功能与最佳实践
  • 【C++】map和set的介绍及使用
  • 从0开始搭建一个生产级SpringBoot2.0.X项目(十)SpringBoot 集成RabbitMQ
  • GNU/Linux - /proc/sys/vm/drop_caches
  • ubuntu 22.04 如何调整进程启动后能打开的文件数限制
  • linux基础-完结(详讲补充)
  • LoRA:大型语言模型(LLMs)的低秩适应;低秩调整、矩阵的低秩与高秩
  • 游戏引擎学习第四天
  • GIT GUI和 GIT bash区别
  • 丹摩征文活动|Faster-Rcnn-训练与测试详细教程
  • 星期-时间范围选择器 滑动选择时间 最小粒度 vue3
  • 一条SQL查询语句的执行流程(MySQL)
  • linux基础——详细篇
  • 大数据学习10之Hive高级
  • MongoDB笔记01-概念与安装
  • ollama + fastGPT + m3e 本地部署指南
  • 【设计模式系列】享元模式(十五)
  • 2024大兴区火锅美食节即将开幕——品味多元火锅,点燃冬季消费热潮
  • 可视化建模与UML《类图实验报告》
  • VS2022项目配置笔记
  • springboot029基于springboot的网上购物商城系统
  • 网站访问在TCP/IP四层模型中的流程
  • C++笔记---包装器