Django データ取得
データを取得
モデルからQuerySetにデータを取得するには、さまざまな方法があります。
values() メソッド
このvalues()
メソッドを使用すると、名前と値をキーと値のペアとして使用して、各オブジェクトをPythonの辞書として返すことができます。
例
views.py
:
from django.http import HttpResponse
from django.template import loader
from .models import Member
def testing(request):
mydata = Member.objects.all().values()
template = loader.get_template('template.html')
context = {
'mymembers': mydata,
}
return HttpResponse(template.render(context, request))
特定の列を返す
このvalues_list()
メソッドを使用すると、指定した列のみを返すことができます。
例
firstname列のみを返します。
views.py
:
from django.http import HttpResponse
from django.template import loader
from .models import Member
def testing(request):
mydata = Member.objects.values_list('firstname')
template = loader.get_template('template.html')
context = {
'mymembers': mydata,
}
return HttpResponse(template.render(context, request))
特定の行を返す
filter()
メソッドを使用すると、検索をフィルタリングして特定の行/レコードのみを返すことができます。
例
firstname
「Emil」が含まれるレコードのみを返します。
views.py
:
from django.http import HttpResponse
from django.template import loader
from .models import Member
def testing(request):
mydata = Member.objects.filter(firstname='Emil').values()
template = loader.get_template('template.html')
context = {
'mymembers': mydata,
}
return HttpResponse(template.render(context, request))
この方法については、次の章filter()
で詳しく説明します。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。