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

Django 安装使用教程

一、Django 简介

Django 是一个高级 Python Web 框架,鼓励快速开发和简洁实用的设计。它内置 ORM、认证系统、后台管理、表单处理、路由控制等功能,广泛用于开发企业级网站、内容管理系统、电商平台等。


二、环境准备

2.1 安装 Python

Django 基于 Python 开发,请先安装 Python 3.7 及以上版本:

python3 --version

若未安装,可前往官网下载安装:https://www.python.org/downloads/


2.2 创建虚拟环境(推荐)

python3 -m venv venv
source venv/bin/activate  # macOS/Linux
venv\Scripts\activate   # Windows

三、安装 Django

使用 pip 安装最新版 Django:

pip install django

验证安装:

django-admin --version

四、创建 Django 项目

django-admin startproject mysite
cd mysite
python manage.py runserver

访问:http://127.0.0.1:8000


五、创建应用(App)

python manage.py startapp blog

注册 app:

mysite/settings.pyINSTALLED_APPS 添加:

INSTALLED_APPS = [...'blog',
]

六、数据库迁移与模型创建

6.1 定义模型

blog/models.py 中添加:

from django.db import modelsclass Post(models.Model):title = models.CharField(max_length=100)content = models.TextField()created_at = models.DateTimeField(auto_now_add=True)

6.2 执行迁移

python manage.py makemigrations
python manage.py migrate

七、Django 后台管理

7.1 创建超级用户

python manage.py createsuperuser

7.2 注册模型

blog/admin.py 添加:

from django.contrib import admin
from .models import Postadmin.site.register(Post)

访问后台:http://127.0.0.1:8000/admin


八、配置 URL 路由

blog/views.py 中添加视图:

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

blog/urls.py 中定义路由:

from django.urls import path
from . import viewsurlpatterns = [path('', views.index),
]

mysite/urls.py 中引入:

from django.urls import include, pathurlpatterns = [path('', include('blog.urls')),path('admin/', admin.site.urls),
]

九、常见问题

Q1: 启动时报错 “ModuleNotFoundError”?

确认是否在虚拟环境中,或模块未正确安装。

Q2: 网页样式错乱?

Django 默认不提供静态文件服务,需配置 STATIC_URLSTATICFILES_DIRS


十、推荐学习资源

  • Django 官方文档
  • 菜鸟教程 Django
  • Django Girls 教程
  • 廖雪峰 Django 教程

本文由“小奇Java面试”原创发布,转载请注明出处。

可以搜索【小奇JAVA面试】第一时间阅读,回复【资料】获取福利,回复【项目】获取项目源码,回复【简历模板】获取简历模板,回复【学习路线图】获取学习路线图。

在这里插入图片描述

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

相关文章:

  • Day3.常见音频场景
  • 动手学Dify:自定义工具与沙盒
  • 澳鹏重磅发布MediGo医疗大模型数据开发平台 破解医疗AI数据瓶颈
  • 【docker部署】在服务器上使用docker
  • 【深度学习-Day 34】CNN实战:从零构建CIFAR-10图像分类器(PyTorch)
  • CISSP知识点汇总-安全与风险管理
  • 智能学号抽取系统 V3.7.5 —— 一个基于 Vue.js 的交互式网页应用
  • 小架构step系列02:搭建工程
  • 智能检测原理和架构
  • STM32WB55VGY6TR 蓝牙OTA升级
  • ZED相机与Foxglove集成:加速机器人视觉调试效率的实用方案
  • 观测云 × AWS SSO:权限治理可观测实践
  • 计算机组成笔记:缓存替换算法
  • [202106][凤凰架构][构建可靠的大型分布式系统][周志明][著]
  • 车载软件架构 -- SOA服务分层设计原则
  • MacOS 安装brew 国内源【超简洁步骤】
  • 线程同步【Linux操作系统】
  • Kafka 运维与调优篇:构建高可用生产环境的实战指南
  • Java学习第六部分——API部分(续)
  • 腾讯云认证考试报名 - TDSQL数据库交付运维专家(TCCE PostgreSQL版)
  • 智慧城市的安全密码:商用密码如何守护万物互联?
  • 运用逆元优化组合计算#数论
  • Django服务开发镜像构建
  • C++主流编辑器特点比较
  • Java 并发编程的 CAS(Compare and Swap)是什么?
  • 讲解“/etc/ssh/sshd_config “的“HostKey /etc/ssh/ssh_host_ed25519_key“ 笔记250702
  • pdf删除一页 python实现(已验证)
  • 模板编译原理
  • 使用OpenCV识别图片相似度评分的应用
  • YOLOv11剪枝与量化(一)模型压缩的必要性