From 7f7c97d499eb6da85a0067a75a641fd96218eaef Mon Sep 17 00:00:00 2001 From: Gavin D'souza Date: Thu, 29 Aug 2024 20:07:31 +0200 Subject: [PATCH] fix: Set doc title name as fallback When the title field is unset for a document, it's value gets unset in a link field on click. Added this fallback on the endpoint so that clicking on field doesn't add an additional API call to fetch the title via Desk. Co-authored-by: Marica Dsouza --- frappe/desk/form/load.py | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/frappe/desk/form/load.py b/frappe/desk/form/load.py index 4400f077a5..8570cfcdaa 100644 --- a/frappe/desk/form/load.py +++ b/frappe/desk/form/load.py @@ -421,7 +421,7 @@ def get_title_values_for_link_and_dynamic_link_fields(doc, link_fields=None): link_fields = meta.get_link_fields() + meta.get_dynamic_link_fields() for field in link_fields: - if not doc.get(field.fieldname): + if not (doc_fieldvalue := doc.get(field.fieldname)): continue doctype = field.options if field.fieldtype == "Link" else doc.get(field.options) @@ -430,10 +430,8 @@ def get_title_values_for_link_and_dynamic_link_fields(doc, link_fields=None): if not meta or not meta.title_field or not meta.show_title_field_in_link: continue - link_title = frappe.db.get_value( - doctype, doc.get(field.fieldname), meta.title_field, cache=True, order_by=None - ) - link_titles.update({doctype + "::" + doc.get(field.fieldname): link_title}) + link_title = frappe.db.get_value(doctype, doc_fieldvalue, meta.title_field, cache=True, order_by=None) + link_titles.update({doctype + "::" + doc_fieldvalue: link_title or doc_fieldvalue}) return link_titles