dajngo 版本更新
数据表定义
from django.db import modelsclass BaseModels(models.Model):create_time = models.DateTimeField("创建时间", auto_now_add=True)Update_time = models.DateTimeField("最后修改时间", auto_now=True)class Meta:abstract = Trueclass Version(BaseModels):name = models.CharField("版本名", max_length=30)info = models.TextField("描述信息", max_length=1000)file = models.FileField("文件")class Meta:verbose_name = "版本管理"verbose_name_plural = verbose_nameordering = ["-create_time", "-Update_time"]
后台定义
@admin.register(Version)class VersionAdmin(admin.ModelAdmin):pass
序列化器定义
class VersionSerializers(serializers.ModelSerializer):class Meta:model = Versionfields = '__all__'
分页定义
class BasePagination(pagination.PageNumberPagination):page_size = 10page_size_query_param = 'page_size'page_query_param = 'page'max_page_size = 1000e122222
功能视图
class VersionViewSet(viewsets.ReadOnlyModelViewSet):queryset = Version.objects.all()serializer_class = VersionSerializerspagination_class = BasePaginationfilter_backends = [DjangoFilterBackend] # 需要导入第三方包 from django_filters.rest_framework import DjangoFilterBackend 自行百度filter_fields = ('name',)
路由注册
from rest_framework.routers import DefaultRouterfrom apps.blog.views import *routers = DefaultRouter()"""其他接口"""routers.register("Version", VersionViewSet, basename="版本管理")
