我是django rest框架的新手,需要一些帮助。
我有ApiView:
class SomeApiView(APIView):
def get_url(self, some_id):
return generate_url(Choices.BOOK, some_id)
def get(self,request):
id = request.query_params.get("some_id")
result_url = self.get_url(id)
return Response({'result_url': result_url})
在这里发送请求时,我得到下一个错误:
Object of type Choices is not Json serializable.
选项看起来像这样:
class Choices(Enum):
BOOK="book"
MOVIE="movie"
GAME="game"
如何修复这个错误?提前谢谢你
错误是说Choice
无法转换为json。你的理想结果是{'result_url': 'book'}
例如(我假设),但现在它是{'result_url': Choice}
不能转换为json。
我的观点是,而不是Choice
你需要返回json序列化的东西(如字符串)。我最好的猜测是,你需要{'result_url': result_url.value}
,但我不知道这是否会工作,因为我不知道你的代码的其余部分。