Files
api2/api/views/designers.py
T

47 lines
1.1 KiB
Python

from flask import Blueprint, request, jsonify
from api import db, tasks
from api.models import Designer
mod = Blueprint('designers', __name__, url_prefix='/designers')
@mod.route("/", methods=["GET"])
def list():
designers = Designer.query.all()
return jsonify(designers=[d.to_json() for d in designers])
@mod.route("/", methods=["POST"])
def create():
data = request.json
designer = Designer(**data)
db.session.add(designer)
db.session.commit()
return jsonify(designer.to_json())
@mod.route("/<int:id>", methods=["GET"])
def show(id):
designer = Designer.query.get_or_404(id)
return jsonify(designer.to_json())
@mod.route("/<id>", methods=["PUT"])
def update(id):
designer = Designer.query.get_or_404(id)
data = request.json
for k, v in data.items():
setattr(designer, k, v)
db.session.add(designer)
db.session.commit()
tasks.esales.update_designer(designer)
return jsonify(designer.to_json())
@mod.route("/<id>", methods=["DELETE"])
def delete(id):
designer = Designer.query.get_or_404(id)
db.session.delete(designer)
db.session.commit()
return jsonify({"status": "ok"})