私は、メインのランディングページや「私について」ページなどを、別のアプリケーションとしてプロジェクトのルートに置くことに決めました。このプロジェクトは、このようになります意味:DjangoルートプロジェクトのURLネームスペースが機能しない
/django-helloworld
/Hello_World
__init__.py
url.py
views.py
wsgi.py
/static
style.css
/templates
index.html
私urls.pyは、次のようになります。
from django.conf.urls import url, include
from django.contrib import admin
from . import views
app_name = 'Hello_World'
urlpatterns = [
url(r'^$', views.IndexView.as_view(), name='index'),
url(r'^admin/', admin.site.urls),
問題は、私は私のテンプレート内のURLを指すようにしようとすると、それが実行して動作しますが、あります:
<a href="{% url 'index' %}">Home</a>
しかし、私はそうのような名前空間を参照しようとした場合:
<a href="{% url 'Hello_World:index' %}">Home</a>
は、私はこのエラーを取得する:
NoReverseMatch at/
'Hello_World' is not a registered namespace
は私が間違って何をしているのですか?前もって感謝します。あなたがする参照のうえいる
あなたの 'ROOT_URLCONF'ですか? – knbk
@knbkあなたはどういうことを言っていますか? settings.pyには 'ROOT_URLCONF = 'Hello_World.urls''があります –