Reactjs 从django API获取react中的用户数据?
我正在创建一个简单的博客前端来使用django后端api。它的设置方式使我可以访问每篇文章的用户数据,如下所示: 后序列化程序:Reactjs 从django API获取react中的用户数据?,reactjs,django,Reactjs,Django,我正在创建一个简单的博客前端来使用django后端api。它的设置方式使我可以访问每篇文章的用户数据,如下所示: 后序列化程序: class PostSerializer(serializers.ModelSerializer): class Meta: model = Post fields = ['id', 'title', 'body', 'user'] depth = 1 react,我在其中显示数据 <Container
class PostSerializer(serializers.ModelSerializer):
class Meta:
model = Post
fields = ['id', 'title', 'body', 'user']
depth = 1
react,我在其中显示数据
<Container variant='lg' maxWidth='lg'>
<div className='posts'>
<Typography key={post.id} variant='h3'>
{post.title}
</Typography>
<Typography paragraph>
{post.body}
</Typography>
<Typography paragraph>
{post.user.user_name}
</Typography>
</div>
</Container>
{post.title}
{post.body}
{post.user.user_name}
现在,这确实适合作为我问题的解决方案,以便在post中显示用户用户名,但它会公开所有用户数据,包括电子邮件、密码哈希、上次登录等
使用react时,获取用户相关数据的更好方法是什么?如下修改序列化程序。不使用深度,而是按如下方式获取用户名
class PostSerializer(serializers.ModelSerializer):
#use Serializer method fields
user_name = serializers.SerializerMethodField()
class Meta:
model = Post
fields = ['id', 'title', 'body', 'user_name']
def get_user_name(self, obj):
try:
return obj.user.user_name
except:
pass
嗨,斯蒂尼。这一决定不应在前端作出。我认为应该在后端用django序列化用户数据(我没有使用django)。这就是我对rails所做的。您只需序列化用户数据,这样就可以避免前面用户的敏感数据-end@JulioLopez啊,这更有道理。我要试试看!