mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Template language: Fix raw_field() function returning incorrect values for lists
Merge branch 'master' of https://github.com/cbhaley/calibre
This commit is contained in:
commit
e8e98c4634
@ -130,7 +130,7 @@ class FormatterFunction(object):
|
|||||||
if isinstance(ret, (str, unicode)):
|
if isinstance(ret, (str, unicode)):
|
||||||
return ret
|
return ret
|
||||||
if isinstance(ret, list):
|
if isinstance(ret, list):
|
||||||
return ','.join(list)
|
return ','.join(ret)
|
||||||
if isinstance(ret, (int, float, bool)):
|
if isinstance(ret, (int, float, bool)):
|
||||||
return unicode(ret)
|
return unicode(ret)
|
||||||
|
|
||||||
@ -348,7 +348,13 @@ class BuiltinRawField(BuiltinFormatterFunction):
|
|||||||
'without applying any formatting.')
|
'without applying any formatting.')
|
||||||
|
|
||||||
def evaluate(self, formatter, kwargs, mi, locals, name):
|
def evaluate(self, formatter, kwargs, mi, locals, name):
|
||||||
return unicode(getattr(mi, name, None))
|
res = getattr(mi, name, None)
|
||||||
|
if isinstance(res, list):
|
||||||
|
fm = mi.metadata_for_field(name)
|
||||||
|
if fm is None:
|
||||||
|
return ', '.join(res)
|
||||||
|
return fm['is_multiple']['list_to_ui'].join(res)
|
||||||
|
return unicode(res)
|
||||||
|
|
||||||
class BuiltinRawList(BuiltinFormatterFunction):
|
class BuiltinRawList(BuiltinFormatterFunction):
|
||||||
name = 'raw_list'
|
name = 'raw_list'
|
||||||
|
Loading…
x
Reference in New Issue
Block a user