fix: Don't cast to str if None or Falsy

* refactor: use get_single_value instead of set_value(blah, None, blah1)
* User.reload in test_home_page to combat what happens locally
This commit is contained in:
Gavin D'souza 2022-01-10 15:05:57 +05:30
parent f6fba91fd2
commit 3052808048
3 changed files with 4 additions and 3 deletions

View file

@ -692,7 +692,7 @@ class Database(object):
filters={"field": ("in", tuple(to_update)), "doctype": dt}, debug=debug
)
singles_data = ((dt, key, str(value)) for key, value in to_update.items())
singles_data = ((dt, key, str(value) if value else value) for key, value in to_update.items())
query = (
frappe.qb.into("Singles")
.columns("doctype", "field", "value")

View file

@ -20,6 +20,7 @@ class TestWebsite(unittest.TestCase):
doctype='User',
email='test-user-for-home-page@example.com',
first_name='test')).insert(ignore_if_duplicate=True)
user.reload()
role = frappe.get_doc(dict(
doctype = 'Role',

View file

@ -88,7 +88,7 @@ def get_home_page():
# portal default
if not home_page:
home_page = frappe.db.get_value("Portal Settings", None, "default_portal_home")
home_page = frappe.db.get_single_value("Portal Settings", "default_portal_home")
# by hooks
if not home_page:
@ -96,7 +96,7 @@ def get_home_page():
# global
if not home_page:
home_page = frappe.db.get_value("Website Settings", None, "home_page")
home_page = frappe.db.get_single_value("Website Settings", "home_page")
if not home_page:
home_page = "login" if frappe.session.user == 'Guest' else "me"