テンプレートから自分のビューにコンテキストを渡そうとしています(ad = TrueでもFalseでも)。ここで私はそれを行うために試みた方法は次のとおりです。テンプレートから表示するコンテキストを渡す:NoReverseMatchエラー
urls.py
url(r'^$', home, name='bv'),
url(r'^q/', search, name='search'),
url(r'^post/', include('post.urls')),
post.urls
url(r'^$', views.post, name='post'),
url(r'^edit/(?P<id>\d+)/', views.edit, name='edit'),
url(r'^delete/(?P<id>\d+)/', views.delete, name='delete'),
テンプレート
<a href="{% url 'post' ad='True' %}">Proceed</a>
post.views
def post(request, ad=False):
...
は、テンプレート内ad='True'
はviews
に渡すとad=True
にデフォルトad=False
を変更する必要があります。代わりに、このエラーメッセージが表示されます:
NoReverseMatch at /advertise/
Reverse for 'post' with arguments '()' and keyword arguments '{'ad': 'True'}'
not found. 1 pattern(s) tried: ['post/$']
問題は何ですか?
なぜあなたはそれを期待していないURLに 'ad'値を渡そうとしていますか? –