Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit 6673ef2

Browse files
authored
Merge pull request #145 from StyXman/master
Possible fix for #144.
2 parents 20d7c37 + 1b4e177 commit 6673ef2

File tree

2 files changed

+9
-9
lines changed

2 files changed

+9
-9
lines changed

‎rest_framework_docs/api_docs.py‎

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,13 +21,13 @@ def __init__(self, drf_router=None):
2121
else:
2222
self.get_all_view_names(root_urlconf.urlpatterns)
2323

24-
def get_all_view_names(self, urlpatterns, parent_pattern=None):
24+
def get_all_view_names(self, urlpatterns, parent_regex=''):
2525
for pattern in urlpatterns:
2626
if isinstance(pattern, RegexURLResolver):
27-
parent_pattern = None if pattern._regex == "^" else pattern
28-
self.get_all_view_names(urlpatterns=pattern.url_patterns, parent_pattern=parent_pattern)
27+
regex = '' if pattern._regex == "^" else pattern._regex
28+
self.get_all_view_names(urlpatterns=pattern.url_patterns, parent_regex=parent_regex+regex)
2929
elif isinstance(pattern, RegexURLPattern) and self._is_drf_view(pattern) and not self._is_format_endpoint(pattern):
30-
api_endpoint = ApiEndpoint(pattern, parent_pattern, self.drf_router)
30+
api_endpoint = ApiEndpoint(pattern, parent_regex, self.drf_router)
3131
self.endpoints.append(api_endpoint)
3232

3333
def _is_drf_view(self, pattern):

‎rest_framework_docs/api_endpoint.py‎

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -7,14 +7,14 @@
77

88
class ApiEndpoint(object):
99

10-
def __init__(self, pattern, parent_pattern=None, drf_router=None):
10+
def __init__(self, pattern, parent_regex=None, drf_router=None):
1111
self.drf_router = drf_router
1212
self.pattern = pattern
1313
self.callback = pattern.callback
1414
# self.name = pattern.name
1515
self.docstring = self.__get_docstring__()
16-
self.name_parent = simplify_regex(parent_pattern.regex.pattern).strip('/') if parent_pattern else None
17-
self.path = self.__get_path__(parent_pattern)
16+
self.name_parent = simplify_regex(parent_regex).strip('/') if parent_regex else None
17+
self.path = self.__get_path__(parent_regex)
1818
self.allowed_methods = self.__get_allowed_methods__()
1919
# self.view_name = pattern.callback.__name__
2020
self.errors = None
@@ -26,8 +26,8 @@ def __init__(self, pattern, parent_pattern=None, drf_router=None):
2626

2727
self.permissions = self.__get_permissions_class__()
2828

29-
def __get_path__(self, parent_pattern):
30-
if parent_pattern:
29+
def __get_path__(self, parent_regex):
30+
if parent_regex:
3131
return "/{0}{1}".format(self.name_parent, simplify_regex(self.pattern.regex.pattern))
3232
return simplify_regex(self.pattern.regex.pattern)
3333

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /