原网址
serializer中使用modelSerializer后可以添加自定义字段,此处是django.user 反向关联snippets,meta.fields中需要添加snippets字段
from django.contrib.auth.models import User
class UserSerializer(serializers.ModelSerializer):
snippets = serializers.PrimaryKeyRelatedField(many=True, queryset=Snippet.objects.all())
class Meta:
model = User
fields = ['id', 'username', 'snippets']
SAFE_METHODS里面提供了 GET/HEAD/OPTIONS的dict
return的是一个对象的owner字段是否和user一样 创建者才能修改
class IsOwnerOrReadOnly(permissions.BasePermission):
def has_object_permission(self, request, view, obj):
if request.method in permissions.SAFE_METHODS:
return True
return obj.owner == request.user
USER的视图不能访问 显示view的 serializer_class没有指定的问题 实际上指定了