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

django中如何使用Django REST Framework

1. 项目设置

# 创建项目目录
mkdir drf_demo
cd drf_demo# 创建虚拟环境并激活
python -m venv venv
source venv/bin/activate  # Linux/Mac
venv\Scripts\activate    # Windows# 安装依赖
pip install django djangorestframework django-cors-headers

2. 创建 Django 项目和应用

django-admin startproject core .
django-admin startapp api

3. 配置 settings.py

# core/settings.pyINSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles',# 添加的应用'rest_framework','corsheaders','api',  # 你的应用
]MIDDLEWARE = ['django.middleware.security.SecurityMiddleware','django.contrib.sessions.middleware.SessionMiddleware','corsheaders.middleware.CorsMiddleware',  # 添加 CORS 中间件'django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.AuthenticationMiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware',
]# 添加以下配置
REST_FRAMEWORK = {'DEFAULT_AUTHENTICATION_CLASSES': ['rest_framework.authentication.SessionAuthentication','rest_framework.authentication.TokenAuthentication',],'DEFAULT_PERMISSION_CLASSES': ['rest_framework.permissions.IsAuthenticatedOrReadOnly',]
}# CORS 配置(开发环境设置)
CORS_ALLOWED_ORIGINS = ["http://localhost:8080",  # Vue 开发服务器地址
]CORS_ALLOW_CREDENTIALS = True# 数据库配置(使用 SQLite 作为示例)
DATABASES = {'default': {'ENGINE': 'django.db.backends.sqlite3','NAME': BASE_DIR / 'db.sqlite3',}
}# 静态文件配置
STATIC_URL = '/static/'

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

相关文章:

  • 网络安全基础概念以及虚拟环境的搭建
  • 快速将照片从三星手机传输到电脑
  • 保姆级搭建harbor私有仓库与docker-ce教程与使用教程
  • JAVA面试宝典 -《Spring IOC核心:Bean生命周期全解析》
  • [论文阅读]LLMZip: Lossless Text Compression using Large Language Models
  • 【论文阅读】Defensive Few-shot Learning
  • RocksDB 与 ZenFS:原理、特性及在科研与工程中的应用初步探索
  • 微调性能赶不上提示工程怎么办?Can Gradient Descent Simulate Prompting?——论文阅读笔记
  • [论文阅读]Text Compression for Efficient Language Generation
  • FreeRTOS移植
  • 零成本获取 SSL 证书攻略?
  • 【论文笔记】A Deep Reinforcement Learning Based Real-Time Solution Policy for the TSP
  • 如何处理mocking is already registered in the current thread
  • VILA-M3: Enhancing Vision-Language Models with Medical Expert Knowledge
  • 探索Alibaba-NLP/WebAgent:迈向智能信息搜索新时代
  • C++每日刷题day2025.7.10
  • Python正则表达式实战指南
  • 文件系统----底层架构
  • 【三维生成】FlashDreamer:基于扩散模型的单目图像到3D场景
  • [特殊字符] LLM(大型语言模型):智能时代的语言引擎与通用推理基座
  • pigz 快速压缩与解压缩
  • Windows 与 Linux 内核安全及 Metasploit/LinEnum 在渗透测试中的综合应用
  • 710 Mybatis实战
  • 【JavaScript 中 null 的本质与原型链终点探析】
  • 三、神经网络——网络优化方法
  • WWDC 25 风云再起:SwiftUI 7 Charts 心法从 2D 到 3D 的华丽蜕变
  • 双指针-18.四数之和-力扣(LeetCode)
  • Cocos2.x 热更教程
  • Python(31)PyPy生成器优化深度解析:JIT加速下的Python性能革命
  • 【博主亲测可用】PS2025最新版:Adobe Photoshop 2025 v26.8.1 激活版(附安装教程)