3

Django 1.5のテンプレートで現在のビュー(my_app.views.index)の完全な名前を取得するにはどうすればよいですか?

フォームでは、テンプレートタグを使用して読み取るテンプレートに「ビュー」というオブジェクトがあります。しかし、DetailViews では、似たようなものは見当たりません。

カスタム テンプレート プロセッサを使用する方法はありますか?

ありがとう

編集

状況 1:

  1. 「/foo/bar/5/edit」などのページを取得します。
  2. Django は pk=5 で 'foo.views.editbar' を呼び出します。
  3. このビューはテンプレート「foo/bar_form.html」をレンダリングします

状況 2:

  1. 「/foo/bar/new」を取得すると
  2. Django は「foo.views.newbar」を呼び出します
  3. このビューは、上記と同じテンプレートをレンダリングします ('foo/bar_form.html')

このテンプレート 'foo/bar_form.html' をどのビューからレンダリングしたかをチェックインするにはどうすればよいですか? 結果は次のいずれかになります。

  • 「foo.views.editbar」
  • 「foo.views.newbar」
4

3 に答える 3

-3

ビュー内のリクエスト オブジェクトに属性を設定するだけです。

setattr(request, 'view', 'app.views.func')

テンプレートでこれを確認します:

{% if request.view == 'app.views.func' %}
    do something
{% endif %}

それは私のために働いた。

于 2013-09-11T17:17:11.570 に答える