aboutsummaryrefslogtreecommitdiffstats
path: root/fatcat
diff options
context:
space:
mode:
authorBryan Newbold <bnewbold@robocracy.org>2018-04-20 14:59:09 -0700
committerBryan Newbold <bnewbold@robocracy.org>2018-04-20 14:59:09 -0700
commitfd1bc46a147c491229a307245367ac451eb1f442 (patch)
tree12003705404a7f48e315628e109ba82b42faa76c /fatcat
parent064a68bfd8ede79c3927ab3a9d9507d5716d8154 (diff)
downloadfatcat-fd1bc46a147c491229a307245367ac451eb1f442.tar.gz
fatcat-fd1bc46a147c491229a307245367ac451eb1f442.zip
test for refs (api)
Diffstat (limited to 'fatcat')
-rw-r--r--fatcat/api.py5
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):