Ich habe in meinem Test:Django urlresolvers.reverse funktioniert nicht für "|" innerhalb nicht-einfangende Gruppe
url = reverse('record-list')
für meinen Dienst/urls.py:
urlpatterns = [
url(r'^records/?$', RecordList.as_view(), name='record-list'),
...
, die auch in meinem Projekt urls.py mit geladen wird:
for app in apps['apps']:
try:
_module = import_module('%s.urls' % app)
except:
if settings.DEBUG:
raise
else:
pass
else:
urlpatterns += [url(r'^api/%s(?:/|/?$)' % app, include('%s.urls' % app))]
und bekommen die Fehler
django.core.urlresolvers.NoReverseMatch: Reverse for 'record-list' with arguments '()' and keyword arguments '{}' not found. 1 pattern(s) tried: ['api/service(?:/|/?$)records/?$']
Warum schlägt die Erfassungsgruppe in der Mitte der URL reverse
fehl?
reverse ('record-list') - kein Parameter senden, (:/|/$?) Ein Parameter notwendig. – Igor
Es ist eine nicht einfangende Gruppe, so dass keine Parameter benötigt werden –
ohne (?:/| /? $) App funktioniert? – Igor