pycharm配置django rest framework
- 安装django rest framework
pip install
- 添加rest_framework app 在settings.py
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', //添加 rest_framework 应用,在你自己创建的app上面 'rest_framework', 'devops', ]
- 连接mysql数据库
请参考这个链接 - 编辑model,创建ORM模型
from django.db import models class SystemBaseInfo(models.Model): # 系统IP地址 sip = models.GenericIPAddressField('sip', protocol='both', blank=True, null=True, default='0.0.0.0') # 带外管理IP地址 mip = models.GenericIPAddressField('mip', protocol='both', blank=True, null=True, default='0.0.0.0') # 隶属业务线 service_line = models.CharField('service_line', max_length=32, default='none') # 业务类别 service_class = models.CharField('service_class', max_length=32, default='none')
// 检查ORM模型有没有错误
python manage.py makemigrations
// 执行变更
python manage.py migrate - 创建序列化文件,在你的应用下面 serializers.py
from rest_framework import serializers from devops import models # 将serializers和model连接起来 class SystemBaseInfo(serializers.HyperlinkedModelSerializer): class Meta: model = models.SystemBaseInfo fields = '__all__'
- 在views.py 创建viewset
from django.shortcuts import render, HttpResponse from rest_framework import viewsets from devops import models from devops import serializers as ss
# 这个文件的作用是querysets和model instances这些复杂的数据结构转化为native Python
# 以便于以json,xml或其它内容类型的形式render出去。
class SystemBaseInfo(viewsets.ModelViewSet): queryset = models.SystemBaseInfo.objects.all() serializer_class = ss.SystemBaseInfo def index(request): return HttpResponse('ok') - 配置urls.py
"""autoever URL Configuration The `urlpatterns` list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/3.1/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import views 2. Add a URL to urlpatterns: path('', views.home, name='home') Class-based views 1. Add an import: from other_app.views import Home 2. Add a URL to urlpatterns: path('', Home.as_view(), name='home') Including another URLconf 1. Import the include() function: from django.urls import include, path 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin from django.urls import path from devops import views as devops # 新增---导入库 from django.conf.urls import url, include from rest_framework import routers, serializers, viewsets # 新增--添加router router = routers.DefaultRouter() router.register('systeminfo', devops.SystemBaseInfo) urlpatterns = [ path('admin/', admin.site.urls), path('', devops.index), path('index/', devops.index),
# 新增 path('api-auth/', include('rest_framework.urls', namespace='rest_framework')), path('api/v1/', include(router.urls)), ] - 测试
http://127.0.0.1:8000/api/v1/



浙公网安备 33010602011771号