sqlalchemy.py 文件源码

python
阅读 24 收藏 0 点赞 0 评论 0

项目:falcon-api 作者: Opentopic 项目源码 文件源码
def _build_order_expressions(self, criteria, relationships):
        """
        :param criteria: criteria dictionary
        :type criteria: dict

        :param relationships:  a dict with all joins to apply, describes current state in recurrent calls
        :type relationships: dict

        :return: expressions list
        :rtype: list
        """
        expressions = []

        if isinstance(criteria, dict):
            criteria = list(criteria.items())
        for arg in criteria:
            if isinstance(arg, tuple):
                arg, value = arg
            else:
                value = None
            is_ascending = True
            if len(arg) and arg[0] == '+' or arg[0] == '-':
                is_ascending = arg[:1] == '+'
                arg = arg[1:]
            expression = self._parse_tokens(self.objects_class, arg.split('__'), value, relationships,
                                            lambda c, n, v: n)
            if expression is not None:
                expressions.append(expression if is_ascending else desc(expression))
        return expressions
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号