Ver a proveniência

[sql] [get_value_for_many_names] if no names, return empty dict

version-14
Anand Doshi há 12 anos
ascendente
cometimento
0d6186797c
1 ficheiros alterados com 9 adições e 4 eliminações
  1. +9
    -4
      webnotes/db.py

+ 9
- 4
webnotes/db.py Ver ficheiro

@@ -310,7 +310,7 @@ class Database:
def get_values(self, doctype, filters=None, fieldname="name", ignore=None, as_dict=False, debug=False):
if isinstance(filters, list):
return self.get_value_for_many_names(doctype, filters, fieldname)
return self.get_value_for_many_names(doctype, filters, fieldname, debug)
fields = fieldname
if fieldname!="*":
@@ -370,10 +370,15 @@ class Database:

return r

def get_value_for_many_names(self, doctype, names, field):
def get_value_for_many_names(self, doctype, names, field, debug=False):
names = filter(None, names)
return dict(self.sql("select name, `%s` from `tab%s` where name in (%s)" \
% (field, doctype, ", ".join(map(lambda n: "'%s'" % n.replace("'", "\'"), names)))))
if names:
return dict(self.sql("select name, `%s` from `tab%s` where name in (%s)" \
% (field, doctype, ", ".join(map(lambda n: "'%s'" % n.replace("'", "\'"), names))),
debug))
else:
return {}

def set_value(self, dt, dn, field, val, modified=None, modified_by=None):
from webnotes.utils import now


Carregando…
Cancelar
Guardar