Преглед изворни кода

Redefine lambdas to accept multiple args instead of a packed tuple (#3811)

Unlike Python 2, Python 3 does not automatically unpack arguments
to lambdas passed as a tuple into named arguments.
Redefinining lamdas to accept separate arguments instead of a
tuple allows them to work in both Python 2 and 3.
version-14
Aditya Hase пре 8 година
committed by Rushabh Mehta
родитељ
комит
839874b357
1 измењених фајлова са 12 додато и 12 уклоњено
  1. +12
    -12
      frappe/utils/data.py

+ 12
- 12
frappe/utils/data.py Прегледај датотеку

@@ -667,21 +667,21 @@ def get_url_to_report(name, report_type = None, doctype = None):

operator_map = {
# startswith
"^": lambda (a, b): (a or "").startswith(b),
"^": lambda a, b: (a or "").startswith(b),

# in or not in a list
"in": lambda (a, b): operator.contains(b, a),
"not in": lambda (a, b): not operator.contains(b, a),
"in": lambda a, b: operator.contains(b, a),
"not in": lambda a, b: not operator.contains(b, a),

# comparison operators
"=": lambda (a, b): operator.eq(a, b),
"!=": lambda (a, b): operator.ne(a, b),
">": lambda (a, b): operator.gt(a, b),
"<": lambda (a, b): operator.lt(a, b),
">=": lambda (a, b): operator.ge(a, b),
"<=": lambda (a, b): operator.le(a, b),
"not None": lambda (a, b): a and True or False,
"None": lambda (a, b): (not a) and True or False
"=": lambda a, b: operator.eq(a, b),
"!=": lambda a, b: operator.ne(a, b),
">": lambda a, b: operator.gt(a, b),
"<": lambda a, b: operator.lt(a, b),
">=": lambda a, b: operator.ge(a, b),
"<=": lambda a, b: operator.le(a, b),
"not None": lambda a, b: a and True or False,
"None": lambda a, b: (not a) and True or False
}

def evaluate_filters(doc, filters):
@@ -704,7 +704,7 @@ def evaluate_filters(doc, filters):
def compare(val1, condition, val2):
ret = False
if condition in operator_map:
ret = operator_map[condition]((val1, val2))
ret = operator_map[condition](val1, val2)

return ret



Loading…
Откажи
Сачувај