pycharm配置django rest framework
2024-10-18 17:33:05
- 安装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/
最新文章
- Chrome 插件集推荐
- swift 创建单例模式
- Win2008R2配置WebDeploy
- [codevs 1503]愚蠢的宠物(特殊的LCA)
- js常用代码收藏
- ue标签不见了,如何解决?
- Web Service 的服务端的引用
- PHP如何防止SQL注入及开发安全 53
- c# foreach枚举器
- MapReduce的C#实现及单元测试(试验)
- DDD分层架构的进化
- Azure cli使用arm创建多网卡虚拟机
- 要学好JAVA要注意些什么?
- angular6 input节流
- 2. 常见的Queue
- 分布式计算框架Spark
- UVA - 748 Exponentiation
- 【NOI 2009】诗人小G
- 18-hadoop-weather案例
- memcached能获取所有的key吗
热门文章
- 基于C#的内网穿透学习笔记(附源码)
- python 魔法方法诠释
- mybatis里的mapper,@Mapper参数,Mapper.xml文件 sql语句Select+where语句
- STM32的CCM RAM
- Java 文件 IO 操作
- C# Redis分布式锁(RedLock) - 多节点
- 学习git这一篇就够了!!!
- Java知识系统回顾整理01基础01第一个程序04创建Eclipse项目
- C++中数组作为形参的方法
- RHSA-2018:1200-重要: patch 安全更新(代码执行)