Django テストぺージ
テストビュー
Djangoのさまざまな側面をテストする場合、メインプロジェクトを破壊せずにコードをテストできる場所を用意しておくことをお勧めします。
これはもちろんオプションですが、このチュートリアルのすべての手順に従う場合は、以下で作成するものとまったく同じテストビューを追加する必要があります。
次に、例に従って、自分のコンピューターで試してみることができます。
ビューを追加
まず、views.py
ファイルに「testing」というビューを追加します。
my_tennis_club/members/views.py
:
from django.http import HttpResponse
from django.template import loader
from .models import Member
def members(request):
mymembers = Member.objects.all().values()
template = loader.get_template('all_members.html')
context = {
'mymembers': mymembers,
}
return HttpResponse(template.render(context, request))
def details(request, id):
mymember = Member.objects.get(id=id)
template = loader.get_template('details.html')
context = {
'mymember': mymember,
}
return HttpResponse(template.render(context, request))
def main(request):
template = loader.get_template('main.html')
return HttpResponse(template.render())
def testing(request):
template = loader.get_template('template.html')
context = {
'fruits': ['Apple', 'Banana', 'Cherry'],
}
return HttpResponse(template.render(context, request))
URL
/testing/への着信URLがtestingビューにリダイレクトされるようにする必要があります。
これは、members
フォルダー内のurls.py
ファイルで行われます。
my_tennis_club/members/urls.py
:
from django.urls import path
from . import views
urlpatterns = [
path('', views.main, name='main'),
path('members/', views.members, name='members'),
path('members/details/<int:id>', views.details, name='details'),
path('testing/', views.testing, name='testing'),
]
テストテンプレート
また、HTMLとDjangoコードを操作できるテンプレートも必要です。
テストビューにテンプレートへの参照があることに気付いたでしょうか。
テンプレートフォルダに「template.html」という名前のテンプレートを作成します。
my_tennis_club
manage.py
my_tennis_club/
members/
templates/
404.html
all_members.html
details.html
main.html
master.html
myfirst.html
template.html
template.htmlファイルを開き、次を挿入します。
my_tennis_club/members/templates/template.html
:
<!DOCTYPE html>
<html>
<body>
{% for x in fruits %}
<h1>{{ x }}</h1>
{% endfor %}
<p>In views.py you can see what the fruits variable looks like.</p>
</body>
</html>
サーバーが実行されていない場合は、/my_tennis_club
フォルダーを開き、コマンドプロンプトで次のコマンドを実行します。
py manage.py runserver
ブラウザウィンドウで、127.0.0.1:8000/testing/
アドレスバーに入力します。
結果は次のようになります。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。