Django REST framework序列化器

from django.db import models
from rest_framework import serializers


class SysUser(models.Model):
    id = models.AutoField(primary_key=True)
    username = models.CharField(max_length=100, unique=True, verbose_name="用户名")
    password = models.CharField(max_length=100, verbose_name="密码")
    avatar = models.CharField(max_length=255, null=True, verbose_name="用户头像")
    email = models.CharField(max_length=100, null=True, verbose_name="用户邮箱")
    phonenumber = models.CharField(max_length=11, null=True, verbose_name="手机号码")
    login_date = models.DateField(null=True, verbose_name="最后登录时间")
    status = models.IntegerField(null=True, verbose_name="帐号状态(0正常 1停用)")
    create_time = models.DateField(null=True, verbose_name="创建时间", )
    update_time = models.DateField(null=True, verbose_name="更新时间")
    remark = models.CharField(max_length=500, null=True, verbose_name="备注")

    class Meta:
        db_table = "sys_user"


class SysUserSerializer(serializers.ModelSerializer):
    class Meta:
        model = SysUser
        fields = '__all__'

class Meta内部类用于定义模型的元数据,这里指定了数据库中的表名为sys_user

SysUserSerializer类继承自serializers.ModelSerializer,表示它是一个DRF序列化器,用于将SysUser模型实例序列化为JSON(或其他格式)数据,以及将JSON数据反序列化为SysUser模型实例。

model属性指定了要序列化的模型类,这里是SysUser。
fields属性指定了要序列化的字段,这里使用'all'表示序列化所有字段。

。。。。。。。。。。。。。

如何使用:例

user = SysUser.objects.get(username=username, password=password)
return JsonResponse({'user':SysUserSerializer(user).data})
posted @ 2025-03-08 21:17  起名字太难0123  阅读(22)  评论(0)    收藏  举报