有两个模型Orders
,并且Clients
在创建时会为每个模型生成相同的模型related_uuid
。也就是说,它们是如此紧密地联系在一起。在网站上搜索时,您需要在两个模型中找到所有出现并显示所有Orders
,包括related_uuid
它在Clients
.
模型.py
class Orders(models.Model):
device = models.CharField(max_length=150)
related_uuid = models.CharField(max_length=22, blank=True)
def __str__(self):
return self.device
class Clients(models.Model):
name = models.CharField(max_length=150)
related_uuid = models.CharField(max_length=22, blank=True)
def __str__(self):
return self.name
视图.py
def getQuery(self):
search_query = self.request.GET.get('filter')
results_query1 = Orders.objects.filter(Q(device__icontains=search_query))
results_query2 = Clients.objects.filter(Q(name__icontains=search_query))
conds = Q(related_uuid__icontains=results_query1) | Q(related_uuid__icontains=related_query2)
search_filter_three = Orders.objects.filter(conds)
return search_filter_three
- 即我正在寻找两种模型中的出现
- 然后我尝试从两个模型中
Orders
按字段选择模型中的所有输入related_uuid
抛出错误django.db.utils.OperationalError: (1241, 'Operand should contain 1 column(s)')
我认为这就是你需要的