From d3704fcee628ae558ef5b8d139a0447feeeda4eb Mon Sep 17 00:00:00 2001 From: JonnyWong16 <9099342+JonnyWong16@users.noreply.github.com> Date: Mon, 3 Aug 2020 19:51:50 -0700 Subject: [PATCH] Add ability for custom calculated attributes for exporting --- plexpy/helpers.py | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/plexpy/helpers.py b/plexpy/helpers.py index 10acf6c1..631f6e84 100644 --- a/plexpy/helpers.py +++ b/plexpy/helpers.py @@ -1172,10 +1172,16 @@ def get_attrs_to_dict(obj, attrs): d = {} for attr, sub in attrs.items(): + no_attr = False + if isinstance(obj, dict): value = obj.get(attr, None) else: - value = getattr(obj, attr, None) + try: + value = getattr(obj, attr) + except AttributeError: + no_attr = True + value = None if callable(value): value = value() @@ -1194,7 +1200,10 @@ def get_attrs_to_dict(obj, attrs): if isinstance(value, list): value = [sub(o) for o in value] else: - value = sub(value) + if no_attr: + value = sub(obj) + else: + value = sub(value) d[attr] = value