summaryrefslogtreecommitdiff
path: root/ishtar_common/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar_common/utils.py')
-rw-r--r--ishtar_common/utils.py16
1 files changed, 16 insertions, 0 deletions
diff --git a/ishtar_common/utils.py b/ishtar_common/utils.py
index 948604c16..5a03f7f5f 100644
--- a/ishtar_common/utils.py
+++ b/ishtar_common/utils.py
@@ -396,3 +396,19 @@ def get_session_var(session_key, key):
if key not in session:
return
return session[key]
+
+
+def get_field_labels_from_path(model, path):
+ """
+ :param model: base model
+ :param path: list of attribute starting from the base model
+ :return: list of labels
+ """
+ labels = []
+ for key in path:
+ field = model._meta.get_field(key)
+ if hasattr(field, 'verbose_name'):
+ labels.append(field.verbose_name)
+ if field.one_to_many or field.one_to_one or field.many_to_many:
+ model = field.model
+ return labels