fix: ensure that frappe.db.get_defaults works for all parents (#17296)

fix: ensure that frappe.db.get_defaults` for all parents, as designed
This commit is contained in:
Sagar Vora 2022-07-08 12:38:36 +00:00 committed by GitHub
parent 0a8a91e30b
commit fc99c22ea2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 9 deletions

View file

@ -933,14 +933,11 @@ class Database:
@staticmethod
def get_defaults(key=None, parent="__default"):
"""Get all defaults"""
if key:
defaults = frappe.defaults.get_defaults(parent)
d = defaults.get(key, None)
if not d and key != frappe.scrub(key):
d = defaults.get(frappe.scrub(key), None)
return d
else:
return frappe.defaults.get_defaults(parent)
defaults = frappe.defaults.get_defaults_for(parent)
if not key:
return defaults
return defaults.get(key) or defaults.get(frappe.scrub(key))
def begin(self):
self.sql("START TRANSACTION")

View file

@ -222,7 +222,7 @@ def get_defaults_for(parent="__default"):
.run(as_dict=True)
)
defaults = frappe._dict({})
defaults = frappe._dict()
for d in res:
if d.defkey in defaults:
# listify