Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
D
django-rest-framework
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
edx
django-rest-framework
Commits
123c6cbc
Commit
123c6cbc
authored
Feb 06, 2013
by
Tom Christie
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #640 from mjtamlyn/remove-naked-excepts
Purge naked excepts.
parents
55fd6466
11610e7c
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
24 additions
and
24 deletions
+24
-24
rest_framework/compat.py
+3
-3
rest_framework/fields.py
+1
-1
rest_framework/relations.py
+10
-10
rest_framework/renderers.py
+2
-2
rest_framework/templatetags/rest_framework.py
+5
-5
rest_framework/tests/urlpatterns.py
+2
-2
rest_framework/views.py
+1
-1
No files found.
rest_framework/compat.py
View file @
123c6cbc
...
@@ -10,13 +10,13 @@ import django
...
@@ -10,13 +10,13 @@ import django
# Try to import six from Django, fallback to included `six`.
# Try to import six from Django, fallback to included `six`.
try
:
try
:
from
django.utils
import
six
from
django.utils
import
six
except
:
except
ImportError
:
from
rest_framework
import
six
from
rest_framework
import
six
# location of patterns, url, include changes in 1.4 onwards
# location of patterns, url, include changes in 1.4 onwards
try
:
try
:
from
django.conf.urls
import
patterns
,
url
,
include
from
django.conf.urls
import
patterns
,
url
,
include
except
:
except
ImportError
:
from
django.conf.urls.defaults
import
patterns
,
url
,
include
from
django.conf.urls.defaults
import
patterns
,
url
,
include
# Handle django.utils.encoding rename:
# Handle django.utils.encoding rename:
...
@@ -35,7 +35,7 @@ except ImportError:
...
@@ -35,7 +35,7 @@ except ImportError:
# django-filter is optional
# django-filter is optional
try
:
try
:
import
django_filters
import
django_filters
except
:
except
ImportError
:
django_filters
=
None
django_filters
=
None
...
...
rest_framework/fields.py
View file @
123c6cbc
...
@@ -228,7 +228,7 @@ class ModelField(WritableField):
...
@@ -228,7 +228,7 @@ class ModelField(WritableField):
def
__init__
(
self
,
*
args
,
**
kwargs
):
def
__init__
(
self
,
*
args
,
**
kwargs
):
try
:
try
:
self
.
model_field
=
kwargs
.
pop
(
'model_field'
)
self
.
model_field
=
kwargs
.
pop
(
'model_field'
)
except
:
except
KeyError
:
raise
ValueError
(
"ModelField requires 'model_field' kwarg"
)
raise
ValueError
(
"ModelField requires 'model_field' kwarg"
)
self
.
min_length
=
kwargs
.
pop
(
'min_length'
,
self
.
min_length
=
kwargs
.
pop
(
'min_length'
,
...
...
rest_framework/relations.py
View file @
123c6cbc
from
__future__
import
unicode_literals
from
__future__
import
unicode_literals
from
django.core.exceptions
import
ObjectDoesNotExist
,
ValidationError
from
django.core.exceptions
import
ObjectDoesNotExist
,
ValidationError
from
django.core.urlresolvers
import
resolve
,
get_script_prefix
from
django.core.urlresolvers
import
resolve
,
get_script_prefix
,
NoReverseMatch
from
django
import
forms
from
django
import
forms
from
django.forms
import
widgets
from
django.forms
import
widgets
from
django.forms.models
import
ModelChoiceIterator
from
django.forms.models
import
ModelChoiceIterator
...
@@ -59,7 +59,7 @@ class RelatedField(WritableField):
...
@@ -59,7 +59,7 @@ class RelatedField(WritableField):
self
.
queryset
=
manager
.
related
.
model
.
_default_manager
.
all
()
self
.
queryset
=
manager
.
related
.
model
.
_default_manager
.
all
()
else
:
# Reverse
else
:
# Reverse
self
.
queryset
=
manager
.
field
.
rel
.
to
.
_default_manager
.
all
()
self
.
queryset
=
manager
.
field
.
rel
.
to
.
_default_manager
.
all
()
except
:
except
Exception
:
raise
raise
msg
=
(
'Serializer related fields must include a `queryset`'
+
msg
=
(
'Serializer related fields must include a `queryset`'
+
' argument or set `read_only=True'
)
' argument or set `read_only=True'
)
...
@@ -290,7 +290,7 @@ class HyperlinkedRelatedField(RelatedField):
...
@@ -290,7 +290,7 @@ class HyperlinkedRelatedField(RelatedField):
def
__init__
(
self
,
*
args
,
**
kwargs
):
def
__init__
(
self
,
*
args
,
**
kwargs
):
try
:
try
:
self
.
view_name
=
kwargs
.
pop
(
'view_name'
)
self
.
view_name
=
kwargs
.
pop
(
'view_name'
)
except
:
except
KeyError
:
raise
ValueError
(
"Hyperlinked field requires 'view_name' kwarg"
)
raise
ValueError
(
"Hyperlinked field requires 'view_name' kwarg"
)
self
.
slug_field
=
kwargs
.
pop
(
'slug_field'
,
self
.
slug_field
)
self
.
slug_field
=
kwargs
.
pop
(
'slug_field'
,
self
.
slug_field
)
...
@@ -317,7 +317,7 @@ class HyperlinkedRelatedField(RelatedField):
...
@@ -317,7 +317,7 @@ class HyperlinkedRelatedField(RelatedField):
kwargs
=
{
self
.
pk_url_kwarg
:
pk
}
kwargs
=
{
self
.
pk_url_kwarg
:
pk
}
try
:
try
:
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
except
:
except
NoReverseMatch
:
pass
pass
slug
=
getattr
(
obj
,
self
.
slug_field
,
None
)
slug
=
getattr
(
obj
,
self
.
slug_field
,
None
)
...
@@ -328,13 +328,13 @@ class HyperlinkedRelatedField(RelatedField):
...
@@ -328,13 +328,13 @@ class HyperlinkedRelatedField(RelatedField):
kwargs
=
{
self
.
slug_url_kwarg
:
slug
}
kwargs
=
{
self
.
slug_url_kwarg
:
slug
}
try
:
try
:
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
except
:
except
NoReverseMatch
:
pass
pass
kwargs
=
{
self
.
pk_url_kwarg
:
obj
.
pk
,
self
.
slug_url_kwarg
:
slug
}
kwargs
=
{
self
.
pk_url_kwarg
:
obj
.
pk
,
self
.
slug_url_kwarg
:
slug
}
try
:
try
:
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
except
:
except
NoReverseMatch
:
pass
pass
raise
Exception
(
'Could not resolve URL for field using view name "
%
s"'
%
view_name
)
raise
Exception
(
'Could not resolve URL for field using view name "
%
s"'
%
view_name
)
...
@@ -360,7 +360,7 @@ class HyperlinkedRelatedField(RelatedField):
...
@@ -360,7 +360,7 @@ class HyperlinkedRelatedField(RelatedField):
try
:
try
:
match
=
resolve
(
value
)
match
=
resolve
(
value
)
except
:
except
Exception
:
raise
ValidationError
(
self
.
error_messages
[
'no_match'
])
raise
ValidationError
(
self
.
error_messages
[
'no_match'
])
if
match
.
view_name
!=
self
.
view_name
:
if
match
.
view_name
!=
self
.
view_name
:
...
@@ -434,7 +434,7 @@ class HyperlinkedIdentityField(Field):
...
@@ -434,7 +434,7 @@ class HyperlinkedIdentityField(Field):
try
:
try
:
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
except
:
except
NoReverseMatch
:
pass
pass
slug
=
getattr
(
obj
,
self
.
slug_field
,
None
)
slug
=
getattr
(
obj
,
self
.
slug_field
,
None
)
...
@@ -445,13 +445,13 @@ class HyperlinkedIdentityField(Field):
...
@@ -445,13 +445,13 @@ class HyperlinkedIdentityField(Field):
kwargs
=
{
self
.
slug_url_kwarg
:
slug
}
kwargs
=
{
self
.
slug_url_kwarg
:
slug
}
try
:
try
:
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
except
:
except
NoReverseMatch
:
pass
pass
kwargs
=
{
self
.
pk_url_kwarg
:
obj
.
pk
,
self
.
slug_url_kwarg
:
slug
}
kwargs
=
{
self
.
pk_url_kwarg
:
obj
.
pk
,
self
.
slug_url_kwarg
:
slug
}
try
:
try
:
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
return
reverse
(
view_name
,
kwargs
=
kwargs
,
request
=
request
,
format
=
format
)
except
:
except
NoReverseMatch
:
pass
pass
raise
Exception
(
'Could not resolve URL for field using view name "
%
s"'
%
view_name
)
raise
Exception
(
'Could not resolve URL for field using view name "
%
s"'
%
view_name
)
...
...
rest_framework/renderers.py
View file @
123c6cbc
...
@@ -217,7 +217,7 @@ class TemplateHTMLRenderer(BaseRenderer):
...
@@ -217,7 +217,7 @@ class TemplateHTMLRenderer(BaseRenderer):
try
:
try
:
# Try to find an appropriate error template
# Try to find an appropriate error template
return
self
.
resolve_template
(
template_names
)
return
self
.
resolve_template
(
template_names
)
except
:
except
Exception
:
# Fall back to using eg '404 Not Found'
# Fall back to using eg '404 Not Found'
return
Template
(
'
%
d
%
s'
%
(
response
.
status_code
,
return
Template
(
'
%
d
%
s'
%
(
response
.
status_code
,
response
.
status_text
.
title
()))
response
.
status_text
.
title
()))
...
@@ -303,7 +303,7 @@ class BrowsableAPIRenderer(BaseRenderer):
...
@@ -303,7 +303,7 @@ class BrowsableAPIRenderer(BaseRenderer):
try
:
try
:
if
not
view
.
has_permission
(
request
,
obj
):
if
not
view
.
has_permission
(
request
,
obj
):
return
# Don't have permission
return
# Don't have permission
except
:
except
Exception
:
return
# Don't have permission and exception explicitly raise
return
# Don't have permission and exception explicitly raise
return
True
return
True
...
...
rest_framework/templatetags/rest_framework.py
View file @
123c6cbc
from
__future__
import
unicode_literals
,
absolute_import
from
__future__
import
unicode_literals
,
absolute_import
from
django
import
template
from
django
import
template
from
django.core.urlresolvers
import
reverse
from
django.core.urlresolvers
import
reverse
,
NoReverseMatch
from
django.http
import
QueryDict
from
django.http
import
QueryDict
from
django.utils.html
import
escape
from
django.utils.html
import
escape
from
django.utils.safestring
import
SafeData
,
mark_safe
from
django.utils.safestring
import
SafeData
,
mark_safe
...
@@ -31,7 +31,7 @@ try: # Django 1.5+
...
@@ -31,7 +31,7 @@ try: # Django 1.5+
def
do_static
(
parser
,
token
):
def
do_static
(
parser
,
token
):
return
StaticFilesNode
.
handle_token
(
parser
,
token
)
return
StaticFilesNode
.
handle_token
(
parser
,
token
)
except
:
except
ImportError
:
try
:
# Django 1.4
try
:
# Django 1.4
from
django.contrib.staticfiles.storage
import
staticfiles_storage
from
django.contrib.staticfiles.storage
import
staticfiles_storage
...
@@ -43,7 +43,7 @@ except:
...
@@ -43,7 +43,7 @@ except:
"""
"""
return
staticfiles_storage
.
url
(
path
)
return
staticfiles_storage
.
url
(
path
)
except
:
# Django 1.3
except
ImportError
:
# Django 1.3
from
urlparse
import
urljoin
from
urlparse
import
urljoin
from
django
import
template
from
django
import
template
from
django.templatetags.static
import
PrefixNode
from
django.templatetags.static
import
PrefixNode
...
@@ -137,7 +137,7 @@ def optional_login(request):
...
@@ -137,7 +137,7 @@ def optional_login(request):
"""
"""
try
:
try
:
login_url
=
reverse
(
'rest_framework:login'
)
login_url
=
reverse
(
'rest_framework:login'
)
except
:
except
NoReverseMatch
:
return
''
return
''
snippet
=
"<a href='
%
s?next=
%
s'>Log in</a>"
%
(
login_url
,
request
.
path
)
snippet
=
"<a href='
%
s?next=
%
s'>Log in</a>"
%
(
login_url
,
request
.
path
)
...
@@ -151,7 +151,7 @@ def optional_logout(request):
...
@@ -151,7 +151,7 @@ def optional_logout(request):
"""
"""
try
:
try
:
logout_url
=
reverse
(
'rest_framework:logout'
)
logout_url
=
reverse
(
'rest_framework:logout'
)
except
:
except
NoReverseMatch
:
return
''
return
''
snippet
=
"<a href='
%
s?next=
%
s'>Log out</a>"
%
(
logout_url
,
request
.
path
)
snippet
=
"<a href='
%
s?next=
%
s'>Log out</a>"
%
(
logout_url
,
request
.
path
)
...
...
rest_framework/tests/urlpatterns.py
View file @
123c6cbc
...
@@ -23,14 +23,14 @@ class FormatSuffixTests(TestCase):
...
@@ -23,14 +23,14 @@ class FormatSuffixTests(TestCase):
factory
=
RequestFactory
()
factory
=
RequestFactory
()
try
:
try
:
urlpatterns
=
format_suffix_patterns
(
urlpatterns
)
urlpatterns
=
format_suffix_patterns
(
urlpatterns
)
except
:
except
Exception
:
self
.
fail
(
"Failed to apply `format_suffix_patterns` on the supplied urlpatterns"
)
self
.
fail
(
"Failed to apply `format_suffix_patterns` on the supplied urlpatterns"
)
resolver
=
urlresolvers
.
RegexURLResolver
(
r'^/'
,
urlpatterns
)
resolver
=
urlresolvers
.
RegexURLResolver
(
r'^/'
,
urlpatterns
)
for
test_path
in
test_paths
:
for
test_path
in
test_paths
:
request
=
factory
.
get
(
test_path
.
path
)
request
=
factory
.
get
(
test_path
.
path
)
try
:
try
:
callback
,
callback_args
,
callback_kwargs
=
resolver
.
resolve
(
request
.
path_info
)
callback
,
callback_args
,
callback_kwargs
=
resolver
.
resolve
(
request
.
path_info
)
except
:
except
Exception
:
self
.
fail
(
"Failed to resolve URL:
%
s"
%
request
.
path_info
)
self
.
fail
(
"Failed to resolve URL:
%
s"
%
request
.
path_info
)
self
.
assertEquals
(
callback_args
,
test_path
.
args
)
self
.
assertEquals
(
callback_args
,
test_path
.
args
)
self
.
assertEquals
(
callback_kwargs
,
test_path
.
kwargs
)
self
.
assertEquals
(
callback_kwargs
,
test_path
.
kwargs
)
...
...
rest_framework/views.py
View file @
123c6cbc
...
@@ -252,7 +252,7 @@ class APIView(View):
...
@@ -252,7 +252,7 @@ class APIView(View):
try
:
try
:
return
conneg
.
select_renderer
(
request
,
renderers
,
self
.
format_kwarg
)
return
conneg
.
select_renderer
(
request
,
renderers
,
self
.
format_kwarg
)
except
:
except
Exception
:
if
force
:
if
force
:
return
(
renderers
[
0
],
renderers
[
0
]
.
media_type
)
return
(
renderers
[
0
],
renderers
[
0
]
.
media_type
)
raise
raise
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment