def post(cls): try: if request.json is None: return error_415() except BadRequest: return error_415() try: validate(request.json, schema=meal_schema()) except (SchemaError, ValidationError): return error_400() meal_id = request.json['id'] meal_name = request.json['name'] meal_servings = request.json['servings'] meal = Meal(id=meal_id, name=meal_name, servings=meal_servings) if 'description' in request.json.keys(): meal.description = request.json['description'] db.session.add(meal) try: db.session.commit() except IntegrityError: db.session.rollback() return error_409() h = add_mason_response_header() h.add('Location', api.url_for(MealItem, handle=meal.id)) return Response(status=201, headers=h)
def add_meal_to_db(meal_id): m = Meal() m.id = meal_id m.name = "Oatmeal" m.servings = 4 m.description = "Simple breakfast Oatmeal cooked in water" db.session.add(m) db.session.commit()
def test_meal_creation(app): with app.app_context(): meal = Meal() meal.id = "123" meal.name = "Soup" meal.servings = 2 # 2 servings db.session.add(meal) db.session.commit() # And with optional fields a = Meal() a.id = "127" a.name = "Oatmeal" a.servings = 3 # 3 servings a.description = "Juha's morning oatmeal that he eats every morning" db.session.add(a) db.session.commit() db.session.delete(meal) db.session.delete(a) db.session.commit()