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

fix(minor): tests and linting

version-14
Rushabh Mehta пре 4 година
родитељ
комит
d959fc7310
2 измењених фајлова са 16 додато и 14 уклоњено
  1. +1
    -1
      frappe/client.py
  2. +15
    -13
      frappe/desk/reportview.py

+ 1
- 1
frappe/client.py Прегледај датотеку

@@ -33,7 +33,7 @@ def get_list(doctype, fields=None, filters=None, order_by=None,
if frappe.is_table(doctype):
check_parent_permission(parent, doctype)

args = dict(
args = frappe._dict(
doctype=doctype,
fields=fields,
filters=filters,


+ 15
- 13
frappe/desk/reportview.py Прегледај датотеку

@@ -57,18 +57,14 @@ def validate_args(data):

return data

def get_fields(data):
if ((isinstance(fields, string_types) and fields == "*")
or (isinstance(fields, (list, tuple)) and len(fields) == 1 and fields[0] == "*")):
data["fields"] = frappe.db.get_table_columns(data.doctype)
fields = data["fields"]

def validate_fields(data):
expand_fields(data)
update_star_field_param(data)

for field in data.fields:
fieldname = extract_fieldname(field)
if is_standard(fieldname): continue
if is_standard(fieldname):
continue

meta, df = get_meta_and_docfield(fieldname, data)

@@ -91,29 +87,30 @@ def validate_filters(data, filters):
if len(condition)==3:
# [fieldname, condition, value]
fieldname = condition[0]
if is_standard(fieldname): continue
if is_standard(fieldname):
continue
meta, df = get_meta_and_docfield(fieldname, data)
if not df:
raise_invalid_field(condition[0])
else:
# [doctype, fieldname, condition, value]
fieldname = condition[1]
if is_standard(fieldname): continue
if is_standard(fieldname):
continue
meta = frappe.get_meta(condition[0])
if not meta.get_field(fieldname):
raise_invalid_field(fieldname)

else:
for fieldname in filters:
if is_standard(fieldname): continue
if is_standard(fieldname):
continue
meta, df = get_meta_and_docfield(fieldname, data)
if not df:
raise_invalid_field(fieldname)

def setup_group_by(data):
'''
Add columns for aggregated values e.g. count(name)
'''
'''Add columns for aggregated values e.g. count(name)'''
if data.group_by:
if data.aggregate_function.lower() not in ('count', 'sum', 'avg'):
frappe.throw('Invalid aggregate function')
@@ -126,6 +123,11 @@ def setup_group_by(data):
data.pop('aggregate_on')
data.pop('aggregate_function')

def expand_fields(data):
if ((isinstance(data.fields, string_types) and data.fields == "*")
or (isinstance(data.fields, (list, tuple)) and len(data.fields) == 1 and data.fields[0] == "*")):
data.fields = frappe.db.get_table_columns(data.doctype)

def raise_invalid_field(fieldname):
frappe.throw(_('Field not permitted in query') + ': {0}'.format(fieldname), frappe.DataError)



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