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

Django 基本介绍

Django 是一个基于 Python 的高性能 Web 框架,采用 MTV(Model-Template-View)模式,内置 ORM、Admin 后台、表单处理等功能,适合快速开发安全、可维护的 Web 应用。

Django 安装配置

确保已安装 Python(3.6+),通过 pip 安装 Django:

bash 复制代码
pip install django

验证安装:

bash 复制代码
django-admin --version

创建项目

使用命令行创建项目骨架:

bash 复制代码
django-admin startproject myproject

目录结构说明:

  • manage.py:项目管理脚本。
  • myproject/settings.py:全局配置(数据库、中间件等)。
  • myproject/urls.py:主路由配置。

运行开发服务器

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

bash 复制代码
python manage.py runserver

默认访问 http://127.0.0.1:8000

关键配置项

修改 settings.py 以适配需求:

  • 数据库 :默认为 SQLite,可切换 MySQL/PostgreSQL:

    python 复制代码
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.mysql',
            'NAME': 'mydatabase',
            'USER': 'root',
            'PASSWORD': 'password',
        }
    }
  • 时区与语言

    python 复制代码
    LANGUAGE_CODE = 'zh-hans'
    TIME_ZONE = 'Asia/Shanghai'
  • 静态文件 :配置 STATIC_URLSTATIC_ROOT

创建应用

Django 项目由多个应用组成,创建应用:

bash 复制代码
python manage.py startapp myapp

settings.pyINSTALLED_APPS 中添加应用名:

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

数据模型与迁移

myapp/models.py 中定义模型:

python 复制代码
from django.db import models

class Article(models.Model):
    title = models.CharField(max_length=100)
    content = models.TextField()

生成并执行迁移:

bash 复制代码
python manage.py makemigrations
python manage.py migrate

路由与视图

  1. 视图 :在 myapp/views.py 中定义逻辑:

    python 复制代码
    from django.shortcuts import render
    def home(request):
        return render(request, 'home.html')
  2. 路由 :在 myapp/urls.py 中配置路径:

    python 复制代码
    from django.urls import path
    from . import views
    urlpatterns = [
        path('', views.home, name='home'),
    ]

    在主路由 myproject/urls.py 中引入应用路由:

    python 复制代码
    from django.urls import include
    urlpatterns = [
        path('', include('myapp.urls')),
    ]

模板渲染

myapp/templates/ 下创建模板文件(如 home.html),使用 Django 模板语法动态渲染数据。

Admin 后台

创建超级用户:

bash 复制代码
python manage.py createsuperuser

访问 http://127.0.0.1:8000/admin 登录,在 myapp/admin.py 中注册模型:

python 复制代码
from django.contrib import admin
from .models import Article
admin.site.register(Article)

注意事项

  • 调试模式:开发时 DEBUG=True,生产环境必须设为 False
  • 安全密钥:SECRET_KEY 需保密,避免泄露。
  • 跨域问题:生产环境需配置 ALLOWED_HOSTS 或使用 CORS 中间件。
相关推荐
zx_zx_1231 天前
哈希表的学习
学习·哈希算法·散列表
Tisfy3 天前
LeetCode 3548.等和矩阵分割 II:矩阵旋转 + 哈希表
leetcode·矩阵·散列表·题解·哈希表·矩阵旋转
Fcy6483 天前
算法竞赛有关数据结构的补充(3)—— 二叉树、堆和哈希表的静态实现(包括红黑树和AVL树动态实现)
数据结构·算法·散列表
旖-旎5 天前
前缀和(和为K的子数组)(5)
c++·算法·leetcode·前缀和·哈希算法·散列表
Trouvaille ~6 天前
【优选算法篇】哈希表——空间换时间的极致艺术
c++·算法·leetcode·青少年编程·蓝桥杯·哈希算法·散列表
liuyao_xianhui7 天前
优选算法_模拟_提莫攻击_C++
开发语言·c++·算法·动态规划·哈希算法·散列表
cui_ruicheng8 天前
C++数据结构进阶:哈希表实现
数据结构·c++·算法·哈希算法·散列表
handler0110 天前
算法:字符串哈希
c语言·数据结构·c++·笔记·算法·哈希算法·散列表
我星期八休息10 天前
深入理解哈希表
开发语言·数据结构·c++·算法·哈希算法·散列表
张李浩10 天前
Leetcode 454 四数相加II 采用哈希表解决
leetcode·哈希算法·散列表