Si consideri che includo namespace applicazione riutilizzabile:Come fare ricerca URL inversa in applicazione riutilizzabile Django namespace
urlpatterns = patterns('',
# ella urls
url('^ella/', include('ella.core.urls', namespace="ella")),
)
Ora, le applicazioni Ella ha gli URL del genere:
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")
)
Ora, chiamando {% url ella:category_detail category="cat" %}
funziona bene. Tuttavia, quando l'oggetto tenta di generare link ad esso di dettagli, chiama
from django.core.urlresolvers import reverse
url = reverse('object_detail', kwargs={'required' : 'params'})
Questo non funziona, a meno che non riscritta come
from django.core.urlresolvers import reverse
url = reverse('ella:object_detail', kwargs={'required' : 'params'})
Quindi, se ho capito bene, compresa l'applicazione riutilizzabile nel namespace interrompe tutto il reverse interno() s all'interno dell'applicazione data.
È vero? Cosa mi sono perso? C'è un modo per aggirare?
+1 Stavo per fare la stessa domanda –