看YouTube一个DRF教程视频,学习过程中遇到一个错误:
TypeError: 'bool' object is not callable
教程环境:
django<2.0
djangorestframework==3.8.1
DRF官方文档:https://www.django-rest-framework.org/community/3.8-announcement/#deprecations
教程中的代码:
# /api/music/{pk}/detail/
@detail_route(methods=['get'])
def detail(self, request, pk=None):
music = get_object_or_404(Music, pk=pk)
result = {
'singer': music.singer,
'song': music.song
}
我用的环境:
django==2.2
djangorestframework==3.11.0
解决办法:
新的框架中取消了from rest_framework.decorators import detail_route, list_route
,改成了from rest_framework.decorators import action
@detail_route(methods=['get'])
def detail(self, request, pk=None):
这句会报TypeError, bool object is not callable
错误
解决办法是更改函数名为其他名字
Comments | NOTHING