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

二、创建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.kler.cn/a/329327.html

相关文章:

  • 学习ASP.NET Core的身份认证(基于JwtBearer的身份认证7)
  • Swift语言的函数实现
  • Vscode:问题解决办法 及 Tips 总结
  • 【银河麒麟高级服务器操作系统】业务访问慢网卡丢包现象分析及处理过程
  • 解决leetcode第3426题所有安放棋子方案的曼哈顿距离
  • 【AI | pytorch】torch.view_as_complex的使用
  • LeetCode 152. 乘积最大子数组
  • TIM(Timer)定时器的原理
  • 深入浅出SpringBoot框架
  • Python 在区块链智能合约开发中的应用与实践
  • 土地规划与区域经济发展:筑基均衡未来的战略经纬
  • MongoDB 工具包安装(mongodb-database-tools)
  • (27)oracle镜像启动
  • 【更新】红色文化之红色博物馆数据集(经纬度+地址)
  • 用Promise实现前端并发请求
  • Win10鼠标总是频繁自动失去焦点-非常有效-重启之后立竿见影
  • Bigemap Pro首发(一款真正全面替代Arcgis的国产基础软件)
  • Linux Mint急救模式
  • 英伟达Ampere架构和Hopper架构技术解析
  • C++(Qt)软件调试---内存调试器Dr.Memory(21)
  • 模拟实战数据落地:MSsql通过存储过程获得销售数据视图
  • Ubuntu20.04中ros2 foxy版本安装gazebo,并运行小车运动demo
  • Java中使用接口实现回调函数的详解与示例
  • C语言、Eazy_X——五子棋
  • 零知识证明在BSV网络上的应用
  • 高度细化的SAGA模式实现:基于Spring Boot与RabbitMQ的跨服务事务