aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGuillaume Horel <guillaume.horel@gmail.com>2013-09-26 00:18:55 -0400
committerGuillaume Horel <guillaume.horel@gmail.com>2013-09-26 00:18:55 -0400
commitc9785732bd65f418325f52facc235fa93a93c138 (patch)
tree8df4c84cf822d921e3ff68a17039febffb1ae6f2
parent7a985982691d1b3824bd78d370bbb9b01cb5d153 (diff)
downloadfamille-flask-c9785732bd65f418325f52facc235fa93a93c138.tar.gz
edit_news() done
-rw-r--r--famille.py19
1 files changed, 10 insertions, 9 deletions
diff --git a/famille.py b/famille.py
index 3ba4919..75205d0 100644
--- a/famille.py
+++ b/famille.py
@@ -188,19 +188,20 @@ def show_news(news_id):
@app.route('/news/<int:news_id>/edit', methods=['GET', 'POST'])
@login_required
def edit_news(news_id):
- db = db_session()
+ metadata = get_metadata()
+ news = Table('news', metadata, autoload = True)
if request.method == 'GET':
- news = query_db(db, "SELECT * from news WHERE news.id = ?",
- (news_id,), True)
+ stmt = select([news]).where(news.c.id = news_id)
+ news = query_db(stmt, True)
if news["user_id"] == session['user_id']:
return render_template('news/add.html', news=news)
elif request.method == 'POST':
- title = request.form['title']
- content = request.form['content']
- content_cache = rstify(content)
- db.execute("UPDATE news SET 'title'=?, 'content'=?, 'content_cache'=? "
- "WHERE news.id =?",
- (title, content, content_cache, news_id))
+ stmt = news.update().where(news.c.id = news_id).\
+ values(title = request.form['title'],
+ content_cache = rstify(request.form['content']),
+ content = request.form['content'])
+ db = db_session()
+ db.execute(stmt)
db.commit()
return redirect(url_for('show_news', news_id=news_id))