嵌套序列化默认值
来源:11-3 首页商品分类显示功能-1

Q小猪2019
2019-04-22
用户表:
class UserProfile(AbstractUser):
"""
用户登录验证
"""
user_choices = (
('user', '用户'),
('agent', '经销商'),
('admin', '管理员')
)
# 其余字段再设计
user_type = models.CharField(max_length=10, choices=user_choices, default='admin', verbose_name='用户类型')
mobile = models.CharField(max_length=11, verbose_name='手机号', null=True, blank=True)
add_time = models.DateTimeField(default=datetime.now, verbose_name='添加时间')
class Meta:
verbose_name = '用户账号'
verbose_name_plural = verbose_name
def __str__(self):
return self.username
经销商表:
class AgentInfo(models.Model):
"""
经销商基础信息
"""
user = models.OneToOneField(UserProfile, on_delete=models.CASCADE, verbose_name='用户')
agent_Grade = models.ForeignKey(AgentGrade, on_delete=models.CASCADE, verbose_name='经销商等级')
company_name = models.CharField(max_length=100, null=True, blank=True, verbose_name='单位名称')
sale_region = models.CharField(max_length=50, null=True, blank=True, verbose_name='销售区域')
legal_person = models.CharField(max_length=10, null=True, blank=True, verbose_name='法人')
province = models.CharField(max_length=10, verbose_name='省', null=True, blank=True)
city = models.CharField(max_length=10, verbose_name='市', null=True, blank=True)
county = models.CharField(max_length=10, verbose_name='县', null=True, blank=True)
email = models.CharField(max_length=50, verbose_name='邮箱', null=True, blank=True)
wechart = models.CharField(max_length=30, null=True, blank=True, verbose_name='微信')
remark = models.TextField(verbose_name='备注', null=True, blank=True)
add_time = models.DateTimeField(default=datetime.now, verbose_name='添加时间')
class Meta:
verbose_name = '经销商信息'
verbose_name_plural = verbose_name
def __str__(self):
return self.user.username
经销商serializer:
class AgentInfoSerializer(ModelSerializer):
user = UserProfileSerializer()
class Meta:
model = AgentInfo
fields = '__all__'
UserProfileSerializer:
class UserProfileSerializer(serializers.ModelSerializer):
# user_type = serializers.ChoiceField(default='admin')
class Meta:
model = User
fields = ('username', 'password', 'user_type', 'mobile')
restframework
在这边新建经销商的时候,我希望指定用户类型为经销商,而不是可以选择用户类型,应该怎么做?
写回答
1回答
-
bobby
2019-04-23
这个如果是自己写前端页面的话需要自己写
00
Python前后端分离开发Vue+Django REST framework实战
Django REST framework课程视频,RESTFul API前后端分离开发
2880 学习 · 2467 问题
相似问题