首页 > 其他分享 >Django-restframework

Django-restframework

时间:2023-01-03 22:35:18浏览次数:47  
标签:verbose models Django restframework import class name

环境安装与配置

DRF需要以下依赖:

  • Python(3.5以上)
  • Django(2.2以上)
      DRF是以Django子应用的方式提供的,所以我们可以直接利用已有的Django环境而无需重新创建。

安装DRF

  前提是安装了django。

$ pip install djangorestframework -i https://pypi.douban.com/simple

创建Django项目

进入创建项目的目录

$ django-admin startproject drf_base

使用pycharm打开项目,设置虚拟环境解析器,并修改manage.py中的后缀参数。

添加restframework应用

在项目的settings.py中添加:

INSTALLED_APPS = [
  ...
  'rest_framework'
]

## Hello World

  在djano项目中创建学生子应用,如果已经创建则无需创建。

```bash $ python manage.py startapp students ``` ### 创建模型类 ```python class Student(models.Model): """ 学生信息 """ name = models.CharField(max_length=255, verbose_name='姓名') sex = models.BooleanField(default=1, verbose_name='性别') age = models.IntegerField(verbose_name='年龄') classmate = models.CharField(max_length=5, verbose_name='班级编号') description = models.TextField(max_length=1000, verbose_name='个性签名')
class Meta:
    db_table = "tb_student"
    verbose_name = '学生'
### 创建序列化器

```python
from rest_framework import serializers
from students.models import Student


class StudentModelSerializer(serializers.ModelSerializer):

    class Meta:
        model = Student
        fields = "__all__"

编写视图

from rest_framework.viewsets import ModelViewSet
from students.models import Student
from serializers import StudentModelSerializer


class StudentModelViewSet(ModelViewSet):
    queryset = Student.objects.all()
    serializer_class = StudentModelSerializer

创建路由

from rest_framework.routers import DefaultRouter
from . import views

router = DefaultRouter()
router.register("students", views.StudentModelViewSet, basename="stu")
urlpatterns = [

] + router.urls
from django.urls import path, include

urlpatterns = [
    path('api/', include("students.urls"))
]

标签:verbose,models,Django,restframework,import,class,name
From: https://www.cnblogs.com/Gazikel/p/17023315.html

相关文章

  • Django 1.3
    https://docs.djangoproject.com/en/4.1/intro/tutorial02/Django的文档看到了02,其中有个很有意思的地方,就是用这个命令pythonmanage.pymigrate框架他会给你一些生成......
  • form组件补充、modelform组件、django中间件
    form组件补充、modelform组件、django中间件目录form组件补充、modelform组件、django中间件form组件渲染标签form组件展示信息form组件校验补充form组件参数补充form组件......
  • 【Django框架】Python和Django对应版本
    Django版本Python版本2.23.5、3.6、3.7、3.8(在2.2.8中添加)、3.9(在2.2.17中添加)3.13.6、3.7、3.8、3.9(在3.1.3中添加)3.23.6、3.7、3.8、3.9、3.1......
  • Django uwsgi.ini配置详情
    #uwsgi.ini[uwsgi]#使用nginx连接时使用socket=0.0.0.0:8000#直接做web服务器使用#http=0.0.0.0:8000#项目目录,与manager.py同级chdir=/home/计算机名/项......
  • Django的urls配置(斜杠/变量/正则)
    url中的斜杠若path中带了斜杠,浏览器输入的url也是带斜杠的则直接可访问 若path中带斜杠,浏览器中输入的url最后未带斜杠,则会301重定向一次到带斜杠的地址......
  • 解决Django新建app报错File "manage.py", line 14 ) from exc SyntaxError: invalid s
    报错解决因为当时使用python3安装的所以是版本问题,直接python3调用即可......
  • Django创建App并实现Helloworld!
    App为Application,可以理解为一个应用,一个项目下可以有多个App。创建Apppython3manage.pystartappapptest1  目录介绍admin.pyadmin后台管理ap......
  • django 和restfamework 文档
    官方网站Github源码1.11版英文文档1.11版中文文档DjangoBook教程TangeWithDjango教程DRF中文文档......
  • django_BBS博客系统练习
    表设计表分析先确认表的数量再确认表的基础字段最后确认表的外键字段1.用户表(基于auth模块设计扩展,手机号,头像,注册时间)fromdjango.contrib.auth.modelsimportAbst......
  • django windwos修改时区session时间无法生效
    windows中修改配置文件时区,数据库可以正常获取到时区时间,但是session时间不生效还是utc时间......