bensin_site/app/api/views.py

51 lines
1.1 KiB
Python

from . import api
from ..models import Gas, Car
from flask import jsonify, request, abort
from .. import db
@api.route('/dummy')
def dummy():
return 'dummy, World!'
@api.route('/cars', methods=['GET', 'POST'])
def list_cars():
cars = Car.query.first()
return jsonify(result=cars.get_public())
@api.route('/gas', methods=['GET', 'POST'])
def list_gas():
gas = Gas.query.first()
return jsonify(result=gas.get_public())
@api.route('/gas/add', methods=['POST'])
def add_gas():
if not request.json:
abort(400)
if not 'price' in request.json:
abort(400)
if not 'volume' in request.json:
abort(400)
if not 'milage' in request.json:
abort(400)
if not 'car' in request.json:
abort(400)
price = request.json['price']
volume = request.json['volume']
milage = request.json['milage']
car = request.json['car']
car_id = Car.query.get_or_404(car)
gas = Gas(price=price, volume=volume, milage=milage, car_id=car_id)
db.session.add(gas)
db.session.commit()
return jsonify(result="OK")