diff options
author | Bryan Newbold <bnewbold@robocracy.org> | 2018-04-20 14:59:09 -0700 |
---|---|---|
committer | Bryan Newbold <bnewbold@robocracy.org> | 2018-04-20 14:59:09 -0700 |
commit | fd1bc46a147c491229a307245367ac451eb1f442 (patch) | |
tree | 12003705404a7f48e315628e109ba82b42faa76c /fatcat | |
parent | 064a68bfd8ede79c3927ab3a9d9507d5716d8154 (diff) | |
download | fatcat-fd1bc46a147c491229a307245367ac451eb1f442.tar.gz fatcat-fd1bc46a147c491229a307245367ac451eb1f442.zip |
test for refs (api)
Diffstat (limited to 'fatcat')
-rw-r--r-- | fatcat/api.py | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/fatcat/api.py b/fatcat/api.py index e5b473bb..9f2ed29a 100644 --- a/fatcat/api.py +++ b/fatcat/api.py @@ -71,6 +71,8 @@ def api_release_create(): edit_group = get_or_create_edit_group(params.get('editgroup')) creators = params.get('creators', []) creators = [CreatorIdent.query.filter(CreatorIdent.id==c).first_or_404() for c in creators] + targets = [ref['target'] for ref in params.get('refs', []) if ref.get('target') != None] + targets = [ReleaseIdent.query.filter(ReleaseIdent.id==t).first_or_404() for t in targets] work = params.get('work') if work: work = WorkIdent.query.filter(WorkIdent.id==work).first_or_404() @@ -87,6 +89,9 @@ def api_release_create(): contribs = [ReleaseContrib(release=rev, creator=c) for c in creators] rev.creators = contribs db.session.add_all(contribs) + refs = [ReleaseRef(release=rev, target=t) for t in targets] + rev.refs = refs + db.session.add_all(refs) ident = ReleaseIdent(is_live=False, rev=rev) edit = ReleaseEdit(edit_group=edit_group, ident=ident, rev=rev) if params.get('extra', None): |