| 320 | api_root_dict = None |
| 321 | |
| 322 | def get(self, request, *args, **kwargs): |
| 323 | # Return a plain {"name": "hyperlink"} response. |
| 324 | ret = {} |
| 325 | namespace = request.resolver_match.namespace |
| 326 | for key, url_name in self.api_root_dict.items(): |
| 327 | if namespace: |
| 328 | url_name = namespace + ':' + url_name |
| 329 | try: |
| 330 | ret[key] = reverse( |
| 331 | url_name, |
| 332 | args=args, |
| 333 | kwargs=kwargs, |
| 334 | request=request, |
| 335 | format=kwargs.get('format') |
| 336 | ) |
| 337 | except NoReverseMatch: |
| 338 | # Don't bail out if eg. no list routes exist, only detail routes. |
| 339 | continue |
| 340 | |
| 341 | return Response(ret) |
| 342 | |
| 343 | |
| 344 | class DefaultRouter(SimpleRouter): |