私の目標は、HTMLページに画像のいくつかのURLを動的に書き込むことです。URLはデータベースに保存されます。
そのために、最初にテンプレートで単純な変数をレンダリングしようとしています。ドキュメントやその他のソースを読んで、3つのステップで行う必要があります。
構成の場合:settings.py内
TEMPLATES = [
{
'OPTIONS': {
'debug': DEBUG,
'context_processors': [
…
'django.template.context_processors.request',
'django.template.context_processors.debug',
'django.template.context_processors.i18n',
'django.template.context_processors.media',
'django.template.context_processors.static',
'django.template.context_processors.tz',
'django.contrib.messages.context_processors.messages', ],
},
},
]
テンプレートの変数名:MyHTMLFile.htmlではfooです
…
<td>MyLabel</td><td><p>{{ foo }}</p></td><td>-----------</td>
…
view.pyで、行の1つ
myvar1 ="BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB"
context = {foo: myvar1,}
return render_to_response("MyHTMLFile.html", context, context_instance = RequestContext(request) )
return render(request, 'MyHTMLFile.html', {foo: myvar1})
return render_to_response("MyHTMLFile.html", context , context_instance=RequestContext(request) )
return render(request, 'MyHTMLFile.html', context)
htmlページは適切にレンダリングされますが、htmlテーブルにデータがありません。
アイデアはありますか?何を誤解しているのか知りたいです。
versioに関して、私は使用しています:python:Python 2.7.13 django:1.10.5
ありがとうございました
context = {foo: myvar1,}
NameError
もちろん、名前付きの変数foo
がある場合を除いて、これにより、文字列を保持できる場合と保持できない場合がありますfoo
。つまり、適切なデータをテンプレートに送信していません。そのはず
context = {'foo': myvar1,}
その後
return render_to_response("MyHTMLFile.html", context, context_instance = RequestContext(request) )
# Below this line code will not be executed.
return render(request, 'MyHTMLFile.html', {foo: myvar1})
return render_to_response("MyHTMLFile.html", context , context_instance=RequestContext(request) )
return render(request, 'MyHTMLFile.html', context)
return
キーワードが関数から戻ることに注意してください。その後のコードは実行されません。
最後に、render_to_responseは非推奨になりました。render
現在使用している関数です。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加