2016-07-11 17 views
1

私はDjangoでブラウズ可能なディレクトリ構造を作成していますが、ボタンフォームとGETリクエストを使用して作成しましたが、ボタンの代わりにリンクを使用して同じことを達成しようとしています。私は正規表現と混同していますが、実際にはわかりません。私はいくつかのものや他の関連する答えを試したが、役に立たなかった。ここでURLパターンを設定するためのDjangoの正規表現

は私のURLパターンです(ボタンを使用して、作業1のため、私はそれは同様のリンクと連携したいのですが):私が欲しいもの

url(r'^realTime/', views.view_real_time_index, name='view_real_time_index'), 

は、次のパスを抽出することですrealTime/はURLの接尾辞にあります。

{% for name,path in directory %} 
    <li> 
     <p> 
      <a href='/realTime/{{path}}'> {{name}} </a> 
     </p> 
    </li> 
{% endfor %} 
+3

'r'realTime /(P *?。)$ ''そもそも問題ないはずです。 –

+0

@RohitJainありがとう、それは働いた、正規表現はの後にいくつかのシンボルを持っている必要がありますが、どのものを把握することができなかったと確信していた。 –

答えて

1

あなたが後で{{path}}を使用することができるようにするために、あなたの正規表現でpathという名前のキャプチャグループを定義する必要があります。 そして、これは私がで動作するようにしようとしているテンプレートの抜粋です。

url(r'^realTime/(?P<path>.*)', views.view_real_time_index, name='view_real_time_index'), 
       ^^^^^^^^^^^ 

あるいは、パスに少なくとも1つの文字がなければならない場合、+*を置き換える:あなただけ.*が必要realTime/後に何かを一致させるために、あなたも$を定義する必要はありません

url(r'^realTime/(?P<path>.+)', views.view_real_time_index, name='view_real_time_index'), 
         ^^ 
をあなたのurls.pyで
+1

**私は 'realtime /'を**ホームページ**として使用しています。ここではすべてのドライブ文字とその他のショートカットパスがリストされています。追加情報をありがとう、私は確かにそれを念頭に置くでしょう。実際には 'path'をビューの引数として使用しています。このビューは変数をさらに処理し、' path'のパスに従って新しい辞書のレンダリングを返します。 –

0

は、次のコード

url(r'^realTime/(?P<path>.*)', views.view_real_time_index, name='view_real_time_index'), 

そして、あなたのV INを使用しますiews.pyあなたが取得して "パス" を使用することができます。

def view_real_time_index(request, path) : 
    print(path) 
    #your code 
関連する問題