我正在Django REST Fremework中创建一个应用程序,用户可以在其中添加订单。 我希望序列化程序基于令牌设置对用户的引用,并完成“客户机”模型字段
它实际上与HiddenField一起工作,如文档所示。 (链接:https://www.django-rest-framework.org/api-guide/fields/#hiddenfield)
class OrderSerializer(serializers.ModelSerializer):
client = serializers.HiddenField(default=serializers.CurrentUserDefault())
class Meta:
model = Order
fields = '__all__'
问题是,当我获取单个订单或订单列表时,Client字段当然是隐藏的,因为它是HiddenField类型
curl -X GET http://127.0.0.1:8000/api/orders/12
{
"id":12,
"name":"sprzatanie ogrodka",
"description":"dupa",
"price":"12.20",
"work_time_hours":2,
"work_time_minutes":50,
"workers_needed_num":3,
"coords_latitude":"-1.300000",
"coords_longitude":"1.100000",
"created_at":"2020-03-08T13:20:16.455289Z",
"finished_at":null,
"category":1,
"workers":[]
}
我希望该字段仍然捕获登录用户的引用,但同时在从API返回数据时可见
我需要使用什么序列化器字段类型?
谢谢
浏览我找到的文档:https://www.django-rest-framework.org/api-guide/validators/
我想这就是你需要的。 所以,您在模型中设置的任何字段类型都可以与
read_only=True
一起使用 例如:希望这有帮助
相关问题 更多 >
编程相关推荐