django安装
-
确保已经安装了Python。命令行中输入
python --version
来检查Python的版本。 -
安装Django。你可以在命令行中使用以下命令来安装Django:
pip install django
-
创建一个新的Django项目。在命令行中,进入你想要创建项目的目录,并运行以下命令:
django-admin startproject project_name
这个命令会在当前目录下创建一个新的Django项目。
-
进入项目目录。在命令行中,使用
cd
命令进入刚刚创建的项目目录。cd project_name
-
运行开发服务。在命令行中,使用以下命令来启动Django开发服务器:
python manage.py runserver
开发服务器将会在本地的
http://localhost:8000/
上运行。如果是pycharm启动需要在配置上运行manage文件
rest接口应用
安装和Django REST framework。
pip install django djangorestframework
进入项目目录:
cd rest_api
然后,你可以使用以下命令创建一个新的Django应用程序:
python manage.py startapp api
接下来,打开项目目录中的settings.py
文件,并将Django REST framework添加到INSTALLED_APPS
列表中:
ALLOWED_HOSTS = ['*']
INSTALLED_APPS = [
...
'rest_framework',
'api',
...
]
然后,打开应用程序目录中的views.py
文件,并创建一个继承自APIView
的类视图:
from rest_framework.views import APIView
from rest_framework.response import Response
class TestView(APIView):
def get(self, request):
data = {
'message': 'This is a test API'
}
return Response(data)
接下来,打开应用程序目录中的urls.py
文件,并添加一个URL模式来映射到上面创建的类视图:
from django.urls import path
from . import views
urlpatterns = [
path('test/', views.TestView.as_view(), name='test_view'),
]
最后,打开项目目录中的urls.py
文件,并将应用程序的URL模式添加到urlpatterns
列表中:
from django.contrib import admin
from django.urls import include, path
urlpatterns = [
path('admin/', admin.site.urls),
path('api/', include('api.urls')),
]
现在,你可以运行以下命令启动Django开发服务器:
python manage.py runserver
服务器启动后,你可以使用工具如Postman或curl来发送HTTP请求来调用RESTful API接口。例如,你可以发送GET请求到http://localhost:8000/api/test/
来查看测试接口的结果。
rest接口的两种写法
写法1
from rest_framework.views import APIView
from rest_framework.response import Response
class MyView(APIView):
def get(self, request):
param1 = request.query_params.get('param1')
param2 = request.query_params.get('param2')
return Response({'param1': param1, 'param2': param2})
我们定义了一个名为MyView
的类视图,并重写了其中的get
方法。在get
方法中,我们使用request.query_params.get()
方法来获取名为param1
和param2
的查询参数的值。
要在URL配置中使用这个类视图,按照以下示例进行操作:
from django.urls import path
from .views import MyView
urlpatterns = [
path('my-view/', MyView.as_view(), name='my-view'),
]
在上面的示例中,我们将MyView
类视图作为视图函数传递给as_view()
方法,并将其映射到名为my-view
的URL模式。
然后,可以使用查询参数来访问接口,就像之前的示例一样:
http://localhost:8000/my-view/?param1=value1¶m2=value2
当您访问带有查询参数的URL时,DRF将自动解析查询参数,并将其作为request.query_params
提供给get
方法。您可以在get
方法中使用这些查询参数来执行相应的操作,并返回响应。
写法2
from rest_framework.views import APIView
from rest_framework.response import Response
from rest_framework import status
def get_data(request):
# 处理GET请求的逻辑
data = {
'message': 'GET request received'
}
return Response(data)
def create_data(request):
# 处理POST请求的逻辑
data = {
'message': 'POST request received'
}
return Response(data, status=status.HTTP_201_CREATED)
def update_data(request, id):
# 处理PUT请求的逻辑
data = {
'message': f'PUT request received for id {id}'
}
return Response(data)
def delete_data(request, id):
# 处理DELETE请求的逻辑
data = {
'message': f'DELETE request received for id {id}'
}
return Response(data)
在上面的示例中,指定视图函数支持的HTTP方法。每个视图函数都接收一个request
参数,用于处理请求,并返回一个Response
对象作为响应。