2013-11-19 3 views
0

Я пробовал перезвонить с установкой Api безрезультатно. Используя оболочку для определения имени RegexpURLPattern, я определяю, что имя было api_v2_top_level, но вызов reverse ('api_v2_top_level_') не работает. Есть идеи?Как перенаправить на точку входа API без жесткого кодирования пути?

# How I determined the name of the view. 
In [3]: v2_api.urls 
Out[3]: 
[<RegexURLPattern api_v2_top_level ^(?P<api_name>v2)/$>, 
<RegexURLResolver <RegexURLPattern list> (None:None) ^(?P<api_name>v2)/>, 
<RegexURLResolver <RegexURLPattern list> (None:None) ^(?P<api_name>v2)/>, 
<RegexURLResolver <RegexURLPattern list> (None:None) ^(?P<api_name>v2)/>] 

from tastypie.api import Api 
v2_api = Api(api_name='v2') 
v2_api.register(...) 
... 
from api.urls import v2_api 
In [4]: v2_api.urls[0] 
Out[4]: <RegexURLPattern api_v2_top_level ^(?P<api_name>v2)/$> 

In [5]: v2_api.urls[0].name 
Out[5]: u'api_v2_top_level' 

ответ

1

reverse('api_v2_top_level', kwargs={'api_name': 'v2'}) должен сделать трюк.

Смежные вопросы