Python中文
首页
教程
问答
标签
搜索
登录
注册
在GET中隐藏password字段,而不是在Django REST框架中隐藏POST,其中serializ中的depth=1
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有两个模型:用户和用户摘要。UserSummary具有User的外键。我刚刚注意到,如果我在<code>UserSummarySerializer</code>内设置<code>depth= 1</code>,那么输出中将包含密码字段。它是散列的,但最好还是排除这个字段。在</p> <p>为了隐藏password字段,我在序列化程序中显式设置了user字段,如下所示:</p> <pre><code>class UserSerializer(serializers.ModelSerializer): """A serializer for our user profile objects.""" class Meta: model = models.User extra_kwargs = {'password': {'write_only': True}} exclude = ('groups', 'last_login', 'is_superuser', 'user_permissions', 'created_at') def create(self, validated_data): """Create and return a new user.""" user = models.User( email = validated_data['email'], firstname = validated_data['firstname'], lastname = validated_data['lastname'], mobile = validated_data['mobile'] ) user.set_password(validated_data['password']) user.save() return user class UserSummarySerializer(serializers.ModelSerializer): user = UserSerializer() class Meta: model = models.UserSummary fields = '__all__' depth = 1 </code></pre> <p>这种方法的缺点是,在创建新用户时,POST请求中的字段密码不再可用。在</p> <p>如何隐藏UserSummary的GET请求上的<code>password</code>字段,而在User的POST请求中显示它?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<pre><code>class UserSerializer(serializers.ModelSerializer): class Meta: model = User def to_representation(self, obj): rep = super(UserSerializer, self).to_representation(obj) rep.pop('password', None) return rep </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何添加虚拟方法
8 回答
如何添加表示整数的擦边字符串?
2 回答
如何添加要在Bokeh中使用的新font.ttf文件?
10 回答
如何添加要显示的矩阵XY轴编号和XY轴
3 回答
如何添加计数?
7 回答
如何添加计数器函数?
8 回答
如何添加计数器列来计算数据帧中另一列中的特定值?
4 回答
如何添加计数器来跟踪while循环中的月份和年份?
10 回答
如何添加计数并删除countplot的顶部和右侧脊椎?
10 回答
如何添加计时器wx.应用程序更新窗口对象的主循环?
5 回答
如何添加评论到帖子?PostDetailVew,Django 2.1.5
10 回答
如何添加评论拉梅尔亚姆
2 回答
如何添加诸如矩阵Python/Pandas之类的数据帧?
2 回答
如何添加谷歌地点自动完成到Flask?
10 回答
如何添加超时、python discord bot
1 回答
如何添加超过1dp的检查
9 回答
如何添加距离方法
3 回答
如何添加跟随游戏的敌人精灵
8 回答
如何添加路径以便python可以找到程序?
3 回答
如何添加身份验证/安全性以使用happybase访问HBase?
3 回答