演習課題「テンプレートにデータを渡そう」
※ この問題を採点する時は、サーバーを起動させ、https://localhost:8000/hello にアクセスできる状態にしてください。
右の環境には、Djangoで「myblog」プロジェクトに「hello」というアプリケーションを作成してあります。
このアプリケーションを修正して、「https://localhost:8000/hello」にアクセスしたら、以下のメッセージを表示するよう、views.pyにデータを追加してください。なお、テンプレートのindex.htmlは修正してはいけません。
```
勇者はスライムと戦った
```
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
演習課題「テンプレートでデータを受け取ろう」
※ この問題を採点する時は、サーバーを起動させ、https://localhost:8000/hello にアクセスできる状態にしてください。
右の環境には、Djangoで「myblog」プロジェクトに「hello」というアプリケーションを作成してあります。
このアプリケーションを修正して、「https://localhost:8000/hello」にアクセスしたら、以下のメッセージを表示するよう、テンプレートでデータを受け取って表示してください。なお、テンプレートのviews.pyは修正してはいけません。
```
勇者はスライムと戦った
```
採点して、すべてのジャッジに正解すれば、演習課題クリアです!
#05:テンプレートにデータを渡そう
ここでは、アプリケーションに追加したテンプレートに、views.pyからデータを渡して表示します。views.pyとテンプレートを分離することで、リクエストやデータの処理とWebページの見た目を別々に管理することができます。
myapp/bbs/views.pyfrom django.shortcuts import render
from django.http import HttpResponse
def index(request):
context = {
'message': 'Welcome my BBS',
'players': ['勇者', '戦士', '魔法使い', '忍者']
}
return render(request, 'bbs/index.html', context)
myapp/bbs/templates/bbs/index.html<!DOCTYPE html>
<html>
<head>
<meta charset='utf-8'>
<title>paiza bbs</title>
<style>body {padding: 10px;}</style>
</head>
<body>
<h1>paiza bbs</h1>
<p>{{ message }}</p>
{% for player in players %}
<p>{{ player }}はモンスターと戦った</p>
{% endfor %}
</body>
</html>
- Django
https://www.djangoproject.com/
- Django ドキュメント | Django documentation | Django
https://docs.djangoproject.com/ja/2.0/
- Home | djangoproject.jp
http://djangoproject.jp/
- Djangoウェブフレームワーク (Python) - ウェブ開発を学ぶ | MDN
https://developer.mozilla.org/ja/docs/Learn/Server-side/Django
- ★ Djangoでの開発 ダイジェスト - Qiita
https://qiita.com/zaburo/items/0e15f6c150caa13ca34c
- Django入門: 初心者でも10分でWebサービスを作れる!PythonフレームワークDjangoとPaizaCloudの使い方 - paiza開発日誌
https://paiza.hatenablog.com/entry/2018/02/28/paizacloud_django