mirror of
https://github.com/encode/django-rest-framework.git
synced 2024-11-26 03:23:59 +03:00
Leave status responsibility to parent class
Django's `HttpResponse` class checks for the `status` param when it's initialized, if it's `None` it uses the class attribute `status_code` and thanks to that we can do things like: ``` class BadRequest(HttpResponse): status_code = 400 ``` Now, that doesn't work when inheriting from rest-framework's `Response`: ``` class BadRequest(rest_framework.response.Response): status_code = 400 # Bad, it's always ignored ``` Because a default status of `200` is being specified in `rest_framework.response.Response`. I think is more Django-friendly to just leave that status default value to `None` and leave the responsibility of choosing its value to the parent class: `HttpResponse`.
This commit is contained in:
parent
18f2ca4b02
commit
ebcc78d96c
|
@ -20,7 +20,7 @@ class Response(SimpleTemplateResponse):
|
|||
if django.VERSION >= (1, 4):
|
||||
rendering_attrs = SimpleTemplateResponse.rendering_attrs + ['_closable_objects']
|
||||
|
||||
def __init__(self, data=None, status=200,
|
||||
def __init__(self, data=None, status=None,
|
||||
template_name=None, headers=None,
|
||||
exception=False, content_type=None):
|
||||
"""
|
||||
|
|
Loading…
Reference in New Issue
Block a user