2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Djangoのrenderは何をするのか

Last updated at Posted at 2020-05-04

#環境
Python3.6.2
Django3.0.5

#結論
Function-based viewsにおいて、templateにcontextの値を渡してHTMLを完成させる。レンダリングの一種。

#そもそもレンダリングとは
データ記述言語やデータ構造で記述された抽象的で高次の情報から、コンピュータのプログラムを用いて画像・映像・音声などを生成することをいう。
(出典:Wikipedia )

#Djangoでのrender(レンダリング)とは
Viewで定義(あるいはmodelから取得)した情報から、renderを用いて(templateにcontext(情報)を渡すことで)HTMLを生成すること。

※Djangoではrender以外もレンダリングのメソッドはありますが、今回は一番ベタで学習しやすかったものにしています。

#renderメソッド
renderメソッドは、request、template_name、contextの主に3つの引数を取ります。

view.py
def test(request):
    context = {{ 'info' :'これを渡す' }}
    render(request, template_name = test.html, context)

###request
セッション情報、呼び出しのメソッド(GET、POST)の情報などで構成されています。外部からこの関数が呼び出された(HttpRequest)場合、その呼び出し情報がはいっています。呼び出すView内の関数を指定する場所はurls.pyです。

###template_name
context(今回はinfo)を渡す先(htmlファイル)をtemplateフォルダから指定します。

###context
渡したい情報を指定します。辞書であればcontextという名前ではなくても問題ありません。

#おわりに
理解が浅い部分もありますので、間違いや+αのことがあればご教授お願い致します。
この記事が参考になった・良かったよと思った方はLGMTを押していただけるとすごくうれしいです。

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?