Make serialize_asset use Pages to a greater extent

This commit is contained in:
Jeff Bradberry
2020-02-17 15:37:12 -05:00
parent 0877e5305c
commit 6f28361bf5

View File

@@ -225,20 +225,20 @@ class Export(CustomCommand):
def serialize_asset(self, asset, options): def serialize_asset(self, asset, options):
fields = { fields = {
key: asset.json[key] for key in options key: asset[key] for key in options
if key in asset.json and options[key]['type'] != 'id' if key in asset.json and key not in asset.related
} }
fk_fields = { fk_fields = {
key: self.get_natural_key(asset.related[key].get()) for key in options key: self.get_natural_key(asset.related[key].get()) for key in options
if key in asset.json and options[key]['type'] == 'id' if key in asset.related
} }
related = {} related = {}
for k, related_endpoint in asset.related.items(): for k, related_endpoint in asset.related.items():
if k != 'roles': if k != 'roles':
continue continue
data = related_endpoint.get(all_pages=True).json data = related_endpoint.get(all_pages=True)
if 'results' in data: if 'results' in data:
related[k] = [self.get_natural_key(x) for x in data.results] related[k] = [self.get_natural_key(x) for x in data.results]