gpt4 book ai didi

python - 相关字段得到无效查找 : icontains

转载 作者:太空狗 更新时间:2023-10-29 17:11:18 26 4
gpt4 key购买 nike

我想在我的主页中包含一个搜索字段。它适用于某些模块领域。我的问题是当我使用 ForeignKey 字段时(如果我错了请纠正我)。

模型.py

class Location(models.Model):
user = models.ForeignKey(User, on_delete=models.CASCADE)
my_location = models.CharField(max_length=120, choices=LOCATION_CHOICES)
update_date = models.DateField(auto_now=True, null=True)

def __str__(self):
return self.my_location


class UserProfile(models.Model):

user = models.ForeignKey(User)
# The additional attributes we wish to include.
user_base = models.CharField(max_length=120, choices=LOCATION_CHOICES)
user_position = models.CharField(max_length=120)
user_phone = models.PositiveIntegerField()

def __unicode__(self):
return self.user.username

views.py

def search_by_location(request):
if 'q' in request.GET and request.GET['q']:
q = request.GET['q']
locations = Location.objects.filter(my_location__icontains=q).order_by('-update_date')
else:
locations = Location.objects.order_by('-update_date')
context = {'locations': locations}
return render(request, 'index.html', context)

我的问题是如果我在过滤器查询中使用 user 而不是 my_location 我会收到错误:

Related Field got invalid lookup: icontains

请提供有关如何排除故障的任何建议或我可以阅读的任何文档。

最佳答案

您可以在文本字段上使用 icontains 查找。 user 是相关的(整数)字段。代替 user 使用 user__username

locations = Location.objects.filter(user__username__icontains=q)

关于python - 相关字段得到无效查找 : icontains,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35012942/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com