From 21c591327c8c4c8bbf34831a23f4439fec32f3b2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ren=C3=A9=20=27Necoro=27=20Neumann?= Date: Sun, 14 Apr 2013 18:54:50 +0200 Subject: Add expense -- in Flask --- app/views/expenses.py | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'app/views/expenses.py') diff --git a/app/views/expenses.py b/app/views/expenses.py index 6b976de..da01308 100644 --- a/app/views/expenses.py +++ b/app/views/expenses.py @@ -1,10 +1,12 @@ from flask import Blueprint -from flask import render_template, request, url_for +from flask import render_template, request, url_for, redirect import datetime, decimal from sqlalchemy import sql, func -from ..model import Category, SingleExpense, CatExpense, MonthExpense +from ..model import db, Category, SingleExpense, CatExpense, MonthExpense + +from ..forms import ExpenseForm mod = Blueprint('expenses', __name__) @@ -71,6 +73,19 @@ def show(year = None, month = None): def edit(id): return render_template("page.jinja") -@mod.route("/add/") +@mod.route("/add/", methods=("GET", "POST")) def add(): - return render_template("page.jinja") + form = ExpenseForm() + form.category.query = Category.query.order_by("name") + + if form.validate_on_submit(): + se = SingleExpense() + + form.populate_obj(se) + + db.session.add(se) + db.session.commit() + + return redirect(url_for("index")) + + return render_template("pages/add.jinja", form=form) -- cgit v1.2.3