Improve document comment app

Add keyword arguments to URL definitions and reverse resolution.
Raise HTTP error 404 instead of 403 to reduce the information
divulged. Add view tests.

Signed-off-by: Roberto Rosario <Roberto.Rosario@mayan-edms.com>
This commit is contained in:
Roberto Rosario
2018-12-30 02:24:25 -04:00
parent 82651ff32c
commit cd9d51db9e
8 changed files with 203 additions and 78 deletions

View File

@@ -24,16 +24,16 @@ class CommentSerializer(serializers.HyperlinkedModelSerializer):
def get_document_comments_url(self, instance):
return reverse(
'rest_api:comment-list', args=(
instance.document.pk,
), request=self.context['request'], format=self.context['format']
viewname='rest_api:comment-list', kwargs={
'document_pk': instance.document.pk,
}, request=self.context['request'], format=self.context['format']
)
def get_url(self, instance):
return reverse(
'rest_api:comment-detail', args=(
instance.document.pk, instance.pk
), request=self.context['request'], format=self.context['format']
viewname='rest_api:comment-detail', kwargs={
'document_pk': instance.document.pk, 'comment_pk': instance.pk
}, request=self.context['request'], format=self.context['format']
)
@@ -58,14 +58,14 @@ class WritableCommentSerializer(serializers.ModelSerializer):
def get_document_comments_url(self, instance):
return reverse(
'rest_api:comment-list', args=(
instance.document.pk,
), request=self.context['request'], format=self.context['format']
viewname='rest_api:comment-list', kwargs={
'document_pk': instance.document.pk
}, request=self.context['request'], format=self.context['format']
)
def get_url(self, instance):
return reverse(
'rest_api:comment-detail', args=(
instance.document.pk, instance.pk
), request=self.context['request'], format=self.context['format']
viewname='rest_api:comment-detail', kwargs={
'document_pk': instance.document.pk, 'comment_pk': instance.pk
}, request=self.context['request'], format=self.context['format']
)