【玩转全栈】----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_URL 和 STATIC_ROOT。

创建应用

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

bash 复制代码
python manage.py startapp myapp

在 settings.py 的 INSTALLED_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 中间件。
相关推荐
0+11121 小时前
算法 --哈希表
数据结构·算法·散列表
SWAGGY..1 天前
【C++进阶】:(10)哈希表的原理与实现——从哈希函数到哈希桶
c++·哈希算法·散列表
霍霍的袁2 天前
【C++】哈希表实现指南:从原理到开放定址法、链地址法的实现
c++·学习·哈希算法·散列表·visual studio
夏幻灵5 天前
每日一题:LeetCode 1:两数之和——从暴力枚举到 Map 哈希表优化
算法·leetcode·散列表
程序员清风6 天前
哈希表:从键值映射到高效查找
数据结构·哈希算法·散列表
开开心心就好6 天前
视频压缩工具推荐,画质效果很能打
智能手机·ffmpeg·ocr·word·排序算法·音视频·散列表
imDwAaY9 天前
Redis 哈希表如何边扩容边服务?讲透渐进式 Rehash
redis·哈希算法·散列表
imDwAaY10 天前
Redis Set 如何节省内存?从整数集合到哈希表的设计取舍
数据结构·redis·散列表
开开心心就好11 天前
图片白底怎么去掉?抠图工具抠完背景透明
java·服务器·开发语言·pdf·ocr·散列表·启发式算法
驭渊的小故事15 天前
牛客网算法刷题笔记:哈希表、贪心与动态规划实战
笔记·算法·散列表