DjangoでWebページを作成する際、テンプレートを使うことが一般的かと思いますが、Class based view での変数の書き方について質問です。
Class based viewで簡単な変数を使うときは下記のように書けばよいことが分かったのですが、これでは「def get_context_data(self, **kwargs):」のところで同じコードを何度も書くことになってしまします。これをすっきり書く方法はないのでしょうか。
python
1#views.py 2from django.views.generic import TemplateView 3 4Dept1 = '技術部' 5Dept2 = '営業部' 6Dept3 = '総務部' 7 8class Gizyutu(TemplateView): 9 template_name = "template.html" 10 def get_context_data(self, **kwargs): 11 context = super().get_context_data(**kwargs) 12 context["Dept"] = Dept1 13 return context 14 15class Eigyo(TemplateView): 16 template_name = "template.html" 17 def get_context_data(self, **kwargs): 18 context = super().get_context_data(**kwargs) 19 context["Dept"] = Dept2 20 return context 21 22class Soumu(TemplateView): 23 template_name = "template.html" 24 def get_context_data(self, **kwargs): 25 context = super().get_context_data(**kwargs) 26 context["Dept"] = Dept3 27 return context
html
1<h1>{{Dept}}のページ</h1>
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/08/18 03:42