2017-09-26 3 views
0

テンプレートをレンダリングするために空のパラメータを渡そうとしていますが、これを達成できません。問題がurls.pyまたはビューにあるかどうかわかりません。本当にありがとうございます。Djangoが空のパラメータを渡す

のURL

url(r'^hola/(\b[a-z\.-]+)$', views.hola, name='hola'), 

ビュー

def hola(request, varr = ''): 
    #val = val 
    pregunta = Datos_usuario_DB.objects.all().order_by('-id').filter(activo="1")[:15] 
    plantilla = {'': 'index.html', 'nosotros': 'nosotros.html'} 
    return render(request, plantilla['%s' % varr], {'pregunta': pregunta}) 

私ははいはいにアクセスすると/それは、ウェブサイトが存在しないことを言います。

答えて

1

あなたは/hola/が仕事をしたい場合は、それは別のURLパターンを追加するのは簡単です:

url(r'^hola/$', views.hola, name='hola'), 
url(r'^hola/([a-z\.-]+)$', views.hola, name='hola'), 

あなたが正規表現で\bを持っている理由それは私にははっきりしていないので、私はそれを削除しました。

+0

が、はいはいでURLを追加する必要があり、二つの引数を取りますので、どのように私ははいはい/ ?,聖霊降臨祭はいはい/ nosotrosにアクセスすることができますが細かい –

+0

に動作します私はあなたを理解していませんコメント。 2番目の引数 'varr'にはデフォルトがありますので、私が提案したように' r '^ hola/$ 'のURLパターンを追加すると、'/hola/'にアクセスできます。 – Alasdair

1

あなたのURLにはhola/のエントリが含まれていないので、エラーが返されます。 あなたがhola/を呼び出したい場合は、あなたがurls.py

関連する問題