fix: Check for db value if cache doesn't exist

in get_controller, if cached value doesn't exist for a DocType in the
frappe.db.value_cache, then query the db as fallback before the final
fallback of assuming module as Core and non custom

(cherry picked from commit 05712abc60)
This commit is contained in:
Gavin D'souza 2021-02-18 19:55:12 +05:30 committed by mergify-bot
parent 804e4e212d
commit 8d8a6cbd5d

View file

@ -34,8 +34,11 @@ def get_controller(doctype):
from frappe.model.document import Document
from frappe.utils.nestedset import NestedSet
module_name, custom = frappe.db.get_value("DocType", doctype, ("module", "custom"), cache=True) \
module_name, custom = (
frappe.db.get_value("DocType", doctype, ("module", "custom"), cache=True)
or frappe.db.get_value("DocType", doctype, ("module", "custom"))
or ["Core", False]
)
if custom:
if frappe.db.field_exists("DocType", "is_tree"):