meal_homework/mealapi/resources/mealresource.py
Torma Kristóf ac459031c7
All checks were successful
continuous-integration/drone/push Build is passing
use marshmallow to persist memes
2022-02-13 21:43:12 +01:00

27 lines
663 B
Python

#!/usr/bin/env python3
from flask_restful import Resource
from flask import request, current_app, abort
from marshmallow import ValidationError
from model import db, Meal
from schemas import MealSchema
class MealBaseResource(Resource):
mealschema = MealSchema(many=False)
mealschemas = MealSchema(many=True)
def post(self):
body = request.get_json()
try:
self.mealschema.load(body, session=db.session)
return '', 204
except ValidationError as error:
abort(406, error.messages)
def get(self):
meals = Meal.query.all()
return self.mealschemas.dump(list(meals)), 200