私はpythonとdjangoには新しく、リダイレクト機能に関する質問があります。Djangoはkwargでリダイレクトします
これは私のviews.pyファイルの縮小バージョンです。
def page_index(request, error_message=''):
print error_message
def add_page(request):
return redirect('page_index') # this work fine
return redirect('page_index', error_message='test') # this does not work
そして、ここで私はすべてが正常に動作しますが、私はkwagを使用するときに、私は次のエラーを取得するキーワード引数なしpage_indexにリダイレクトしようとすると、私のurls.py
urlpatterns = patterns(
'x.views',
url(r'^$', 'page_index', {'error_message': 't'}, name='page_index'),
url(r'^add/$', 'add_page', name='add_page'),
)
の短いバージョンです。メッセージ:
NoReverseMatchの引数を持つ 'page_index' のリバース '(')
ページ/追加/
/時dキーワード引数 '{' error_message ':'テスト '}'が見つかりません。
私は間違っていますか?
情報との見解を呼び出す方法がありますが、URLではないthatsの? – Justus1
はい、Pythonで行います。add_pageビューから 'return page_index(error_message = 'test')'を実行するだけです。 –
あなたがそれを行うと、URLは変更されません、私には悪いパターンと思われる現在のビュー(add_page)に別のビュー(page_index)の内容を返しました。また、独自のセッションベースのメッセージングソリューションをローリングする代わりに、Djangoの組み込みの[メッセージフレームワーク](https://docs.djangoproject.com/en/1)を使用することをお勧めします。3/ref/contrib/messages /) – Anentropic