小编HoJ*_*Lee的帖子

如何从序列化程序获取数据参数?

我正在使用 Django 和 django-restframework。

我不知道如何访问 Serializer 的参数。

我可以从 .json 访问完整的 json 数据serializer.data。但是当我尝试获取像 的参数时id,它返回错误。serializer.data.id.

我怎么才能得到它?我花了很多时间来搜索这个,但失败了。

我这样做是因为根据用户输入更新模型。

例如

  1. 用户输入 id
  2. 获取数据 id
  3. 将该数据保存到数据库中。

我非常非常感谢您阅读本文。

视图.py

class CareerViewSet(viewsets.ModelViewSet):
    queryset = Career.objects.all()
    serializer_class = CareerSerializer
    permission_classes = (IsCreateable,)

    def perform_create(self, serializer):
        serializer.save(nickname='test')
        print(serializer.data)
        print(serializer.data.id)
Run Code Online (Sandbox Code Playgroud)

错误

{'id': 14, 'created': '2017-04-26T12:39:58.249038Z', 'modified': '2017-04-26T12:39:58.249538Z', 'battle_tag': 'Fortune-1130', 'nickname': 'test', 'quick_eliminations': None, 'quick_damage_done': None, 'quick_deaths': None, 'quick_final_blows': None, 'quick_healing_done': None, 'quick_objective_kills': None, 'quick_objective_time': None, 'quick_solo_kills': None, 'competitive_eliminations': None, 'competitive_damage_done': None, 'competitive_deaths': …
Run Code Online (Sandbox Code Playgroud)

python django serialization django-rest-framework

1
推荐指数
1
解决办法
4407
查看次数