我正在尝试使用以下函数在django视图中过滤结果:
views.py
def index(request):
european_team_list = Team.objects.all().filter(type = 'Europe')
context = {'european_team_list': european_team_list}
return render(request, 'myapp/index.html', context)
admin.py
class Team(models.Model):
continent = models.CharField()
def _team_type(self):
if self.country = "Europe":
return "Europe"
else:
return "Not Europe"
team_type = property(_team_type)
...other fields...
但是,当我加载页面时,出现错误"无法解析关键字' team_type'进入田野。选择是:"然后它列出除team_type之外的Team类中的所有字段。任何指导都将非常感谢。
答案 0 :(得分:1)
简单的答案是,您无法使用filter()
方法执行此操作。 filter()
用于构造SQL查询,并且只能在数据库级别的对象上运行。
因此,您应该弄清楚如何使用数据库值来表达您的查询。它不清楚你的实际代码是什么,但它可能看起来像:
european_team_list = Team.objects.filter(continent='Europe')
或:
european_team_list = Team.objects.filter(country__in=('France', 'Poland'))