我正在尝试在此查询中使用OR:
User.query.filter(or_(username==data['username'], email==data['email'])).first()
但是,我收到了这条消息:
全局名称'or_'未定义
我正在使用SqlAlchemy 0.9.7(它已包含or_)
之前有人遇到此问题和/或知道如何修复它?
答案 0 :(得分:1)
很可能你没有导入必要的模块
def show_category(request, category_slug):
category = get_object_or_404(Category, slug=category_slug)
subcategories = Category.objects.filter(parent_id=category.id)
products = ProductFilter(request.GET, queryset=Product.objects.filter(categories=category).annotate(starting_price=Min('variant__price')))
breadcrumbs = Category.get_parents(category.id)
return render(request, 'catalog/category.html', {'category' : category, 'subcategories' : subcategories, 'breadcrumbs' : breadcrumbs, 'products' : products})
另外,我不确定此运算符是否可以与过滤器一起使用。但试试这种方法。
使用Python |也可以使用or_()连接operator(虽然请注意复合表达式需要括起来以便使用Python运算符优先级行为):
from sqlalchemy import or_