def book_add(): session = Session() authorid = None title = None isbn = None read = 0 if len(request.json) == 0: return json.dumps(return_code[1]), 400 if "title" in request.json: title = request.json["title"] else: return json.dumps(return_code[2]), 400 if "author_id" in request.json: authorid = request.json["author_id"] if not exists_in_db("id", authorid, "Author"): return json.dumps(return_code[5]), 400 else: return json.dumps(return_code[2]), 400 if "isbn" in request.json: isbn = request.json["isbn"] if "read" in request.json: read = request.json["read"] new_book = Book(authorid, title, isbn=isbn, book_read=read) if exists_in_db("title", title, "Book"): return json.dumps(return_code[3]), 409 if exists_in_db("isbn", isbn, "Book"): return json.dumps(return_code[3]), 409 session.add(new_book) session.commit() rsp_dict = dict(return_code[0]) rsp_dict["added"] = new_book.as_dict(show_id=True) rsp_dict = json.dumps(rsp_dict) rsp = Response(rsp_dict) rsp.headers.add("Location", "/api/books/{}".format(new_book.id)) session.close() return rsp, 201