Bộ truy vấn Django - Nhận dữ liệu
Lấy dữ liệu
Có nhiều phương pháp khác nhau để lấy dữ liệu từ một mô hình vào Bộ truy vấn.
Phương thức value()
Phương thức values()
cho phép bạn trả về từng đối tượng dưới dạng từ điển Python, với tên và giá trị dưới dạng cặp khóa/giá trị:
Ví dụ
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))
Chạy ví dụ »Trả về các cột cụ thể
Phương thức values_list()
cho phép bạn chỉ trả về các cột mà bạn chỉ định.
Ví dụ
Chỉ trả về các cột 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))
Chạy ví dụ »Trả về các hàng cụ thể
Bạn có thể lọc tìm kiếm để chỉ trả về các hàng/bản ghi cụ thể bằng cách sử dụng phương thức filter()
.
Ví dụ
Chỉ trả lại các bản ghi có firstname
là '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))
Chạy ví dụ » Bạn sẽ tìm hiểu thêm về phương thức filter()
trong chương tiếp theo .