Commit 7a34b0a5 authored by Tom Kedem's avatar Tom Kedem

fixed lazy string manipulation for remote properties.

parent 47080aeb
...@@ -2,6 +2,7 @@ import logging ...@@ -2,6 +2,7 @@ import logging
import warnings import warnings
import inspect import inspect
from speaklater import is_lazy_string, make_lazy_string
from sqlalchemy.orm.attributes import InstrumentedAttribute from sqlalchemy.orm.attributes import InstrumentedAttribute
from sqlalchemy.orm import joinedload, aliased from sqlalchemy.orm import joinedload, aliased
from sqlalchemy.sql.expression import desc from sqlalchemy.sql.expression import desc
...@@ -637,8 +638,14 @@ class ModelView(BaseModelView): ...@@ -637,8 +638,14 @@ class ModelView(BaseModelView):
if not isinstance(name, string_types): if not isinstance(name, string_types):
visible_name = self.get_column_name(name.property.key) visible_name = self.get_column_name(name.property.key)
else: else:
names = name.split('.') names = [self.get_column_name(name_item) for name_item in name.split('.')]
visible_name = ' / '.join([self.get_column_name(names_item) for names_item in names])
def concat_func():
return ' / '.join([str(names_item) for names_item in names])
if any(map(is_lazy_string, names)):
visible_name = make_lazy_string(concat_func)
else:
visible_name = concat_func()
type_name = type(column.type).__name__ type_name = type(column.type).__name__
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment