From 02172e39c15272f9567bd39a28ec24d0270ea70f Mon Sep 17 00:00:00 2001 From: René 'Necoro' Neumann Date: Mon, 15 Apr 2013 23:56:53 +0200 Subject: 'templated' and wrapped 'redirect' --- app/views/consts.py | 31 +++++++++++++++++-------------- 1 file changed, 17 insertions(+), 14 deletions(-) (limited to 'app/views/consts.py') diff --git a/app/views/consts.py b/app/views/consts.py index 1879c15..441137d 100644 --- a/app/views/consts.py +++ b/app/views/consts.py @@ -1,17 +1,15 @@ from ..flask_extend import Blueprint -from flask import render_template, request, url_for, redirect +from flask import request import datetime from sqlalchemy import sql from ..model import db, Category, ConstExpense from ..forms import ConstForm, today +from ..utils import templated, redirect mod = Blueprint('consts', __name__) -def T(tpl): - return "consts/%s.jinja" % tpl - def const_form(cur=None, obj=None): obj = cur if obj is None else obj form = ConstForm(obj=obj) @@ -31,6 +29,7 @@ def const_form(cur=None, obj=None): return form @mod.route("/") +@templated() def list (): d = today() @@ -49,13 +48,15 @@ def list (): else: future.append(e) - return render_template(T("list"), current = current, old = old, future = future) + return { 'current': current, 'old': old, 'future': future } @mod.route("/") +@templated() def show(id): - return render_template(T("show"), exp = ConstExpense.get(id)) + return { 'exp': ConstExpense.get(id) } @mod.route("/edit/", methods=("GET", "POST")) +@templated() def edit(id): exp = ConstExpense.get(id) form = const_form(exp) @@ -64,16 +65,17 @@ def edit(id): if "deleteB" in request.form: db.session.delete(exp) db.session.commit() - return redirect(url_for(".list")) + return redirect(".list") elif form.validate(): # change form.populate_obj(exp) db.session.commit() - return redirect(url_for(".show", id = exp.id)) + return redirect(".show") - return render_template(T("edit"), form=form) + return { 'form': form } @mod.route("/add/from/") +@templated("add") def add_from(other): exp = ConstExpense() # needed to initialize 'CE.next' @@ -88,18 +90,19 @@ def add_from(other): form.end.data = start.replace(year = start.year + 1) if not other.next: form.prev.data = other - return add(form) + return { 'form': form } @mod.route("/add/", methods=("GET", "POST")) -def add (form=None): +@templated() +def add (): exp = ConstExpense() - form = const_form() if form is None else form + form = const_form() if form.validate_on_submit(): form.populate_obj(exp) db.session.add(exp) db.session.commit() - return redirect(url_for(".show", id = exp.id)) + return redirect(".show", id = exp.id) - return render_template(T("add"), form = form) + return { 'form': form } -- cgit v1.2.3-70-g09d2