Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Django中搜索几个列_Python_Mysql_Django_Database_Web - Fatal编程技术网

Python 在Django中搜索几个列

Python 在Django中搜索几个列,python,mysql,django,database,web,Python,Mysql,Django,Database,Web,我得到了一个只有几列的数据库。 我想在我的搜索中添加一个选项,不仅搜索一个类似项目的列。我还想再搜索几列。。因此,搜索将查找Project、ServerName或IP,并搜索所有列或其中的一些列 我尝试过(Project\uuuiCONTAINS=query,ServerName\uuuiCONTAINS=query),但它说的语法错误 index.html: def get(self, request): form = HomeForm() query = re

我得到了一个只有几列的数据库。 我想在我的搜索中添加一个选项,不仅搜索一个类似项目的列。我还想再搜索几列。。因此,搜索将查找Project、ServerName或IP,并搜索所有列或其中的一些列

我尝试过(Project\uuuiCONTAINS=query,ServerName\uuuiCONTAINS=query),但它说的语法错误

index.html:

def get(self, request):
        form = HomeForm()
        query = request.GET.get("q")
        posts = serverlist.objects.all()

        if query:
            posts = serverlist.objects.filter(Project__icontains=query)
        else:
            posts = serverlist.objects.all()
    #    else:
models.py:

  from django.db import models


class serverlist(models.Model):
    ServerName = models.CharField(max_length = 30)
    Owner = models.CharField(max_length = 50)
    Project = models.CharField(max_length = 30)
    Description = models.CharField(max_length = 255)
    IP = models.CharField(max_length = 30)
    ILO = models.CharField(max_length = 30)
    Rack = models.CharField(max_length = 30)
    Status = models.CharField(max_length = 30)
你可以用

从文档中:

Q对象(django.db.models.Q)是用于封装关键字参数集合的对象。这些关键字参数在上面的“字段查找”中指定

例如:

posts = serverlist.objects.filter(
     Q(Project__icontains=query)|Q(ServerName__icontains=query)
)

不客气。如果答案有帮助,请接受:)嗨,埃夫金,你有我可以联系你的电子邮件吗?嗨,埃夫金,我还有很多问题要问。你能检查一下,我给你打勾吗?