【玩转全栈】----Django基本配置和介绍

Django 简介

Django 是一个高级 Python Web 框架,遵循"快速开发"和"DRY(Don't Repeat Yourself)"原则。它提供了强大的 ORM、自带管理后台、模板引擎和安全性功能,适合快速构建复杂的 Web 应用。Django 采用 MTV(Model-Template-View)模式,类似于 MVC。

安装 Django

确保已安装 Python(推荐 3.8+版本)。通过 pip 安装最新稳定版 Django:

bash 复制代码
pip install django

验证安装:

bash 复制代码
python -m django --version

创建 Django 项目

使用以下命令创建新项目(项目名为 myproject):

bash 复制代码
django-admin startproject myproject

目录结构如下:

复制代码
myproject/
    manage.py           # 项目管理脚本
    myproject/          # 项目配置目录
        __init__.py
        settings.py     # 主配置文件
        urls.py         # URL 路由配置
        asgi.py         # ASGI 配置
        wsgi.py         # WSGI 配置

运行开发服务器

进入项目目录,启动开发服务器:

bash 复制代码
python manage.py runserver

默认访问 http://127.0.0.1:8000/ 即可看到欢迎页面。

配置基础设置

修改 settings.py 关键配置项:

  1. 数据库配置(默认 SQLite):
python 复制代码
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.sqlite3',
        'NAME': BASE_DIR / 'db.sqlite3',
    }
}
  1. 静态文件路径
python 复制代码
STATIC_URL = '/static/'
STATICFILES_DIRS = [BASE_DIR / "static"]
  1. 时区和语言
python 复制代码
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_TZ = False

创建应用

Django 项目由多个应用组成。创建应用(例如名为 blog):

bash 复制代码
python manage.py startapp blog

应用目录结构:

复制代码
blog/
    migrations/         # 数据库迁移文件
    __init__.py
    admin.py            # 管理后台配置
    apps.py             # 应用配置
    models.py           # 数据模型
    tests.py            # 测试代码
    views.py            # 视图逻辑

注册应用

settings.pyINSTALLED_APPS 中添加新应用:

python 复制代码
INSTALLED_APPS = [
    ...,
    'blog',
]

定义第一个视图

blog/views.py 中编写简单视图:

python 复制代码
from django.http import HttpResponse

def home(request):
    return HttpResponse("Hello, Django!")

配置 URL 路由

  1. blog 目录下创建 urls.py
python 复制代码
from django.urls import path
from . import views

urlpatterns = [
    path('', views.home, name='home'),
]
  1. 在项目 myproject/urls.py 中包含应用路由:
python 复制代码
from django.contrib import admin
from django.urls import include, path

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('blog.urls')),
]

数据迁移

首次运行需迁移内置模型(如用户权限):

bash 复制代码
python manage.py migrate

访问管理后台

创建超级用户:

bash 复制代码
python manage.py createsuperuser

启动服务器后,访问 http://127.0.0.1:8000/admin 登录管理界面。

模板渲染

  1. blog 下创建 templates/blog 目录,添加模板文件 home.html
html 复制代码
<!DOCTYPE html>
<html>
<head>
    <title>{{ title }}</title>
</head>
<body>
    <h1>Welcome to {{ site_name }}</h1>
</body>
</html>
  1. 修改视图以渲染模板:
python 复制代码
from django.shortcuts import render

def home(request):
    context = {
        'title': 'Home',
        'site_name': 'My Blog'
    }
    return render(request, 'blog/home.html', context)

以上步骤完成了 Django 的基础配置和核心功能演示。后续可扩展模型定义、表单处理、用户认证等高级功能。

相关推荐
青春:一叶知秋2 小时前
【Redis存储】List列表
数据库·redis·缓存
爆更小哇4 小时前
MyBatis的TypeHandler :优雅地实现数据加密与解密
数据库·后端·mybatis
likuolei4 小时前
Eclipse 创建 Java 接口
java·数据库·eclipse
w***15314 小时前
Spring boot启动原理及相关组件
数据库·spring boot·后端
q***65695 小时前
PostgreSQL 17 发布了!非常稳定的版本
数据库·postgresql
云飞云共享云桌面5 小时前
如何降低非标自动化工厂的研发软件采购成本
运维·服务器·网络·数据库·性能优化·自动化
泰克教育官方账号5 小时前
泰涨知识 | 什么是自动化巡检?
运维·服务器·数据库
oneslide5 小时前
分享一个MySQL数据库备份恢复脚本--II
数据库·mysql
Gauss松鼠会5 小时前
【GaussDB】使用DBLINK连接到ORACLE
数据库·sql·database·gaussdb
Arva .6 小时前
深度分页、读写分离、分库分表后 SQL 该如何优化?
数据库·sql