HTTP 409 makes sense in a number of cases
This commit is contained in:
parent
fcebc5f5ec
commit
be0531415d
2 changed files with 5 additions and 3 deletions
|
@ -112,6 +112,8 @@ class APIHybridMessageRedirectResponse(APIHybridResponse):
|
|||
self.level = level
|
||||
self.message = message
|
||||
self.redirect_to = redirect_to
|
||||
if self.level == 'error' and status_code is None:
|
||||
raise Exception('Error with HTTP 200 makes no sense!')
|
||||
self.status_code = status_code
|
||||
|
||||
def get_api_response(self, request):
|
||||
|
|
|
@ -261,7 +261,7 @@ def edit(request, pk=None, model=None, level=None, space=None, on_top_of=None, e
|
|||
if new:
|
||||
return APIHybridMessageRedirectResponse(
|
||||
level='error', message=_('You can not create new objects because your changeset is full.'),
|
||||
redirect_to=ctx['back_url'], status_code=403,
|
||||
redirect_to=ctx['back_url'], status_code=409,
|
||||
)
|
||||
elif obj.pk not in model_changes:
|
||||
messages.warning(request, _('You can not edit this object because your changeset is full.'))
|
||||
|
@ -286,7 +286,7 @@ def edit(request, pk=None, model=None, level=None, space=None, on_top_of=None, e
|
|||
if nosave:
|
||||
return APIHybridMessageRedirectResponse(
|
||||
level='error', message=_('You can not edit this object because your changeset is full.'),
|
||||
redirect_to=request.path, status_code=403,
|
||||
redirect_to=request.path, status_code=409,
|
||||
)
|
||||
|
||||
if not can_edit:
|
||||
|
@ -304,7 +304,7 @@ def edit(request, pk=None, model=None, level=None, space=None, on_top_of=None, e
|
|||
return APIHybridMessageRedirectResponse(
|
||||
level='error',
|
||||
message=_('You can not delete this object because other objects still depend on it.'),
|
||||
redirect_to=request.path, status_code=403,
|
||||
redirect_to=request.path, status_code=409,
|
||||
)
|
||||
|
||||
if request.POST.get('delete_confirm') == '1' or delete:
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue