Django flaky url(随机省略 WSGIScriptAlias)
Django flaky url (randomly omits WSGIScriptAlias)
我的 Django 站点生成的 URL 间歇性地省略了我的 WSGIScriptAlias。如果我只是在我的 index.html 中打印出 {% url 'index' %}
(请参阅下面我的 urls.py
设置),我会随机(大约 50% 的时间)得到:
MySiteAlias/MySite
哪个是正确的,或者
MySite/
这是不正确的。
myapp/urls.py:
from django.conf.urls import url,include
urlpatterns = [
url(r'^MySite/', include('mysite.urls')),
]
mysite/urls.py:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
]
和 views.index 基本上是 return render(request, 'mysite/index.html)
。关于如何解决此问题的任何想法?
我想您可能有两个同名的网址,这就是命名空间的用武之地。如果您为 mysite.urls
提供命名空间,那么就不会混淆您应该去哪里
url(r'^MySite/', include('mysite.urls', namespace='mysite')),
{% url 'mysite:index' %}
我的 Django 站点生成的 URL 间歇性地省略了我的 WSGIScriptAlias。如果我只是在我的 index.html 中打印出 {% url 'index' %}
(请参阅下面我的 urls.py
设置),我会随机(大约 50% 的时间)得到:
MySiteAlias/MySite
哪个是正确的,或者
MySite/
这是不正确的。
myapp/urls.py:
from django.conf.urls import url,include
urlpatterns = [
url(r'^MySite/', include('mysite.urls')),
]
mysite/urls.py:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.index, name='index'),
]
和 views.index 基本上是 return render(request, 'mysite/index.html)
。关于如何解决此问题的任何想法?
我想您可能有两个同名的网址,这就是命名空间的用武之地。如果您为 mysite.urls
提供命名空间,那么就不会混淆您应该去哪里
url(r'^MySite/', include('mysite.urls', namespace='mysite')),
{% url 'mysite:index' %}