項目名__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)
次へ >> |