summaryrefslogtreecommitdiff
path: root/ishtar/ishtar_base/widgets.py
diff options
context:
space:
mode:
Diffstat (limited to 'ishtar/ishtar_base/widgets.py')
-rw-r--r--ishtar/ishtar_base/widgets.py26
1 files changed, 17 insertions, 9 deletions
diff --git a/ishtar/ishtar_base/widgets.py b/ishtar/ishtar_base/widgets.py
index acd7dc427..941d9f0c9 100644
--- a/ishtar/ishtar_base/widgets.py
+++ b/ishtar/ishtar_base/widgets.py
@@ -27,6 +27,7 @@ from django.utils.html import escape
from django.utils.simplejson import JSONEncoder
from django.core.urlresolvers import resolve, reverse
from django.utils.translation import ugettext_lazy as _
+from django.db.models import fields
from ishtar import settings
import models
@@ -223,15 +224,22 @@ class JQueryJqGrid(forms.RadioSelect):
for field_name in getattr(self.associated_model, self.table_cols):
field = self.associated_model
keys = field_name.split('.')
- try:
- for key in keys:
- if hasattr(field, 'rel'):
- field = field.rel.to
- field = field._meta.get_field(key)
- except:
- continue
- col_names.append(u'"%s"' % field.verbose_name)
- extra_cols.append(self.COL_TPL % {'idx':field.name})
+ field_verbose_name = ""
+ for key in keys:
+ if hasattr(field, 'rel'):
+ field = field.rel.to
+ try:
+ fld = field._meta.get_field(key)
+ field_verbose_name = fld.verbose_name
+ field_name = fld.name
+ except fields.FieldDoesNotExist:
+ if hasattr(field, key + '_lbl'):
+ field_name = key
+ field_verbose_name = getattr(field, key + '_lbl')
+ else:
+ continue
+ col_names.append(u'"%s"' % field_verbose_name)
+ extra_cols.append(self.COL_TPL % {'idx':field_name})
col_names = col_names and ",\n".join(col_names) or ""
col_idx = col_idx and ",\n".join(col_idx) or ""
extra_cols = extra_cols and ",\n".join(extra_cols) or ""