一、REST framework: 新建纯净版项目
1、新建项目
djangoProject_test
1、安装django
pip install django
2、安装REST framework
pip install djangorestframework
2、生成django项目
django-admin start-project djangoProject_test .
3、生成应用
python manage.py startapp auto_project
4、剔除settings.py不必要配置,并配置DRF
# 修改 INSTALLED_APPS、MIDDLEWARE、TEMPLATES 三处配置信息 INSTALLED_APPS = [ # 'django.contrib.admin', # 'django.contrib.auth', # 'django.contrib.contenttypes', # 'django.contrib.sessions', # 'django.contrib.messages', 'django.contrib.staticfiles', # 静态文件 'rest_framework', # 配置DRF 'auto_project' # 配置项目 ] 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', ] TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [BASE_DIR / 'templates'] , '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', ], }, }, ]
5、视图中,新建视图函数
from rest_framework.response import Response class CleanProjectView(MyAPIView): # 认证类,没有时,注释掉,纯净版项目创建时,先注释掉 # authentication_classes = [] def get(self, request, *args, **kwargs): return Response('GET') def post(self, request, *args, **kwargs): return Response('POST')
6、配置url路由,请注意:<str:version> 当前没有使用,可以删除
urlpatterns = [ path('api/<str:version>/clean/', views.CleanProjectView.as_view()), # path('api/<str:version>/user/', views.RequestDataView.as_view()), # re_path("api/(?P<version>.+)/user/(?P<id>\d+)", views.RequestDataDetailView.as_view()), ]
7、启动项目
python manage.py runserver
8、使用postmen访问get请求,报异常

RuntimeError: Model class django.contrib.contenttypes.models.ContentType doesn't declare an explicit app_label and isn't in an application in INSTALLED_APPS.
9、settings.py中配置
REST_FRAMEWORK = { "UNAUTHENTICATED_USER": None }

10, 重启项目,再次访问,接口正常,纯净版项目新建成功


浙公网安备 33010602011771号