Учтите, что я включаю многоразовое приложение с пространством имен:
urlpatterns = patterns('',
# ella urls
url('^ella/', include('ella.core.urls', namespace="ella")),
)
Теперь в приложениях Ella есть такие URL:
urlpatterns = patterns( '',
url( r'^(?P<category>[a-z0-9-/]+)/$', category_detail, name="category_detail" ),
# object detail
url( r'^(?P<category>[a-z0-9-/]+)/(?P<year>\d{4})/(?P<month>\d{1,2})/(?P<day>\d{1,2})/(?P<content_type>[a-z0-9-]+)/(?P<slug>[a-z0-9-]+)/$',
object_detail, name="object_detail" )
)
Теперь вызов {% url ella:category_detail category="cat" %}
работает нормально. Однако, когда объект пытается сгенерировать ссылку на свои данные, он вызывает
from django.core.urlresolvers import reverse
url = reverse('object_detail', kwargs={'required' : 'params'})
Это не работает, если не переписано как
from django.core.urlresolvers import reverse
url = reverse('ella:object_detail', kwargs={'required' : 'params'})
Итак, если я правильно понимаю, включение многоразового приложения в пространство имен нарушает все внутренние reverse () внутри данного приложения .
Это правда? Что я пропустил? Есть ли способ обойти?