項目名__iexact=値
項目名__contains=値
項目名__startswith=値
項目名__endswith=値
項目名__icontains=値
項目名__istartswith=値
項目名__iendswith=値
filter(mail__contains='taro')とすれば、mailの値に'taro'というテキストが含まれているものをすべて検索する、というわけです。
name_str = request.POST['name']送信されたnameフィールドの値を取り出し、それを使って、filter(name__contains=name_str) というように検索を行なっています。これで、name項目の値にname_strを含むものがすべて取り出されます。
data = Person.objects.all().filter(name__contains=name_str)
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
def index(request,num=1000):
if request.method == 'POST':
name_str = request.POST['name']
data = Person.objects.all().filter(name__contains=name_str)
else:
data = Person.objects.all()
name_str = ''
context = {
'current_name': name_str,
'msg': 'Personのリスト',
'data': data,
}
return render(request, 'hello/index.html', context)
| 次へ >> |