diff --git a/frappe/utils/redis_wrapper.py b/frappe/utils/redis_wrapper.py index 9798d2aef6..59e9a65cca 100644 --- a/frappe/utils/redis_wrapper.py +++ b/frappe/utils/redis_wrapper.py @@ -102,23 +102,23 @@ class RedisWrapper(redis.Redis): def delete_key(self, *args, **kwargs): self.delete_value(*args, **kwargs) - def delete_value(self, keys, user=None, make_keys=True): + def delete_value(self, keys, user=None, make_keys=True, shared=False): """Delete value, list of values.""" if not isinstance(keys, (list, tuple)): keys = (keys, ) for key in keys: + if key in frappe.local.cache: + del frappe.local.cache[key] + if make_keys: - key = self.make_key(key) + key = self.make_key(key, shared=shared) try: self.delete(key) except redis.exceptions.ConnectionError: pass - if key in frappe.local.cache: - del frappe.local.cache[key] - def lpush(self, key, value): super(redis.Redis, self).lpush(self.make_key(key), value) diff --git a/frappe/www/print.py b/frappe/www/print.py index e40ceb4a00..3db4a5cf81 100644 --- a/frappe/www/print.py +++ b/frappe/www/print.py @@ -270,6 +270,10 @@ def make_layout(doc, meta, format_data=None): doc.set(df.fieldname, True) # show this field if is_visible(df, doc) and has_value(df, doc): + if page[-1]['columns'] == []: + # if no column, add one + page[-1]['columns'].append({'fields': []}) + page[-1]['columns'][-1]['fields'].append(df) # section has fields