我知道".pyc"文件是纯文本".py"文件的编译版本,在运行时创建以使程序运行得更快.但是我发现了一些事情:
rm *.pyc)后,程序行为有时会发生变化.这表明他们没有在".py"更新时编译.问题:
即使我的观点重写,我也会收到以下错误.get_queryset()
AssertionError: Cannot apply DjangoModelPermissions on a view that does not set `.queryset` or have a `.get_queryset()` method.
Run Code Online (Sandbox Code Playgroud)
这是我的观点:
class PlayerViewSet(viewsets.ModelViewSet):
serializer_class = PlayerSerializer
def get_queryset(self):
try:
quality = self.kwargs['quality'].lower()
print("Getting Player for %s"%quality)
return Player.objects.filter(qualities__contains=quality)
except:
# todo: send out a 404
print("No Players found for this quality :(")
pass
Run Code Online (Sandbox Code Playgroud)
我的settings.py:
REST_FRAMEWORK = {
# Use Django's standard `django.contrib.auth` permissions,
# or allow read-only access for unauthenticated users.
'DEFAULT_PERMISSION_CLASSES': [
'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'
]
}
Run Code Online (Sandbox Code Playgroud)
编辑 - 附加信息: …