0

khanacademy.orgの動画と同じURLパターンが欲しいです。「TheBeautyofAlgebra」というタイトルの動画を開いたとすると、そのURLはhttp://www.khanacademy.org/math/algebra/introduction-to-algebra/v/the-beauty-of-algebraになります。

URLに3つのレベルのカテゴリ(数学、代数、代数の紹介)が表示されます。djangoでも同じです。カテゴリのレベル(パラメータの数)はNまで増加する可能性があります。

私はURLを次のようにハードコーディングしたくありませんでした

url(r"^(?P<level_one>[a-zA-Z]+)/v/(?P<slug>[-\w]+)/$", "my_view", name="level_one"),
url(r"^(?P<level_one>[a-zA-Z]+)/(?P<level_two>[a-zA-Z]+)/v/(?P<slug>[-\w]+)/$", "my_view", name="level_two"),
url(r"^(?P<level_one>[a-zA-Z]+)/(?P<level_two>[a-zA-Z]+)/(?P<level_three>[a-zA-Z]+)/v/(?P<slug>[-\w]+)/$", "my_view", name="level_three"),
...

ありがとう!

4

1 に答える 1

2

に可変数のパラメータを含めることは不可能だと思いますurls.py。最良のオプションは、djangoのURLが提供できるものよりも複雑な独自のURLディスパッチャーを作成するビューを指す単一の汎用キャッチオールURLを持つことです。

パスを解析し、ビュー内のN個のレベルを処理できます。

于 2012-08-15T09:34:41.687 に答える