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

二、创建drf纯净项目

1)创建项目

django-admin startproject api

2)创建app

django-admin startproject api_app

3)修改settings.py注释掉一些没用的配置

INSTALLED_APPS = [# 'django.contrib.admin',# 'django.contrib.auth',# 'django.contrib.contenttypes',# 'django.contrib.sessions',# 'django.contrib.messages','django.contrib.staticfiles',
]MIDDLEWARE = ['django.middleware.security.SecurityMiddleware',# 'django.contrib.sessions.middleware.SessionMiddleware','django.middleware.common.CommonMiddleware','django.middleware.csrf.CsrfViewMiddleware',# 'django.contrib.auth.middleware.AuthenticationMiddleware',# 'django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware',
]ROOT_URLCONF = 'api.urls'TEMPLATES = [{'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [],'APP_DIRS': True,'OPTIONS': {'context_processors': ['django.template.context_processors.debug','django.template.context_processors.request',# 'django.contrib.auth.context_processors.auth',# 'django.contrib.messages.context_processors.messages',],},},
]

4)安装drf

pip3 install djangorestframework

5)注册drf

setttings.py

INSTALLED_APPS = [# 'django.contrib.admin',# 'django.contrib.auth',# 'django.contrib.contenttypes',# 'django.contrib.sessions',# 'django.contrib.messages','django.contrib.staticfiles','rest_framework',        #注册drf
]

3.3创建url路由和CBV

urlpatterns = [# path('admin/', admin.site.urls),path('home/', views.home),path('user/', views.UserView.as_view()),     #CBV路由
]
class UserView(APIView):def get(self,request):return Response('返回成功')

这时候访问user/会报错,因为没有用户信息

Model class django.contrib.contenttypes.models.ContentType doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.

需要在settings.py加入以下代码:

#将未认证用户置空
REST_FRAMEWORK = {"UNAUTHENTICATED_USER":None,
}

http://www.mrgr.cn/news/41102.html

相关文章:

  • 【前沿 热点 顶会】NIPS 2024中与强化学习有关的论文
  • 【P5657 [CSP-S2019] 格雷码】
  • 电影推荐系统
  • 开放式耳机哪个品牌好?值得选购的开放式蓝牙耳机推荐
  • 校园健康数据管理:SpringBoot技术优势
  • Ref-NeuS参数记录
  • ThreadLocal原理解析及面试
  • 大语言模型入门(二)——提示词
  • 金融领域的人工智能——Palmyra-Fin 如何重新定义市场分析
  • 【CViT】Deepfake Video Detection Using Convolutional Vision Transformer
  • 互联网大厂软件开发背后的秘密:为何瀑布和 Scrum 模式备受青睐?
  • 【linux进程】进程优先级命令行参数环境变量
  • 【mmengine】优化器封装(OptimWrapper)(入门)优化器封装 vs 优化器
  • 试用模方软件时,在编辑模型视图下操作较卡,模型分辨率是3厘米,重建时设置平面划分的瓦片大小是450米,划分瓦片的时候大小设置多少比较合适?
  • 如何使用ssm实现基于JSP的高校听课评价系统
  • WPF下使用FreeRedis操作RedisStream实现简单的消息队列
  • 适用于 Windows 10 的最佳 PDF 编辑器列表,可帮助更改 PDF 文件。
  • ConcurrentLinkedQueue的核心方法有哪些?
  • 记一次炉石传说记牌器 Crash 排查经历
  • 【C++前缀和 状态压缩】1371. 每个元音包含偶数次的最长子字符串|2040