私は1.3から1.1に移行したばかりのアプリケーションを移行し始めています。django 1.3 URLテンプレートタグとクラスベースのビュー
私はクラスベースのビューの厚さで取得し始めていると吹き飛ばされていますが、実際には良い方法ではありません。
私はいくつかの不満を持っているが、ここで具体的な質問です:
は、これは私がジェネリッククラスベースのビューでURLテンプレートタグを使用することができる唯一の方法ですか?
Django reverse url with parameters to a class based view
つまり、すべての単一のURLエントリに名前を付ける必要がありますか?ジャンゴの基本理念の一つはDRY、まだここで私たちはあるよう
これは、事前に
おかげで..... RY-INGの....私にはばかげているようです。
編集:{」の引数を持つ 'views.HomeView.as_view' のリバース '()' とキーワード引数:
だから私はhttps://gist.github.com/1877374
を持っており、レンダリング中にエラー TemplateSyntaxError キャッチNoReverseMatchを取得}' 見つかりません。
これは間違っていますか?
タンジェント:
私たちはにurls.pyファイル
よう
私urls.pyは、一般的に見えます。
要点は、の場合にはとなるようにしています。私は絶対に必要なときに、名前の機能を使用します。さもなければ、なぜ私は時間とエネルギーを冗長にすべてのエントリに追加し、すべてのエントリに名前をつけたいのですか?それは頻繁にviews.pyのクラス/ファンクションの名前と同じでしょうか?
多分これは別の問題に分かれているはずです。
このAlasdairに返信してくれてありがとう。私が{%url MyView.as_view%}をやろうとすると、これはうまくいかないでしょうか?なぜ私の見解では変数として割り当てる必要がありますか?ビュークラスは、呼び出し可能にする必要があるas_view()関数を継承すると思ったのですか? –
'MyView.as_view'は呼び出し可能なビューではありません。これは、呼び出し可能なビューを返すメソッドです。 'MyView.as_view()'を変数に代入しなければ、それは無名関数なので、元に戻すことはできません。 – Alasdair
pre-django1.3関数ベースのビューで作業していたとき、なぜ関数ビューが(私たちがURLパターンで渡した)匿名関数として扱われなかったのですか?私は基本的に私たちは私たちではなかったurl関数のメソッドを供給していたという意味ですか?彼らはちょうど私たちが意見として定義したものでした。私は、クラスベースのMyView.as_view()と関数ベースのmy_view()を呼び出すことの違いを見ていません –