csv export
This commit is contained in:
parent
4eb943eedc
commit
7938ec3591
17
app/views.py
17
app/views.py
@ -394,6 +394,23 @@ def add_to_stack(id):
|
|||||||
db.session.commit()
|
db.session.commit()
|
||||||
return render_template('show_stack_detail.html', stack=stack)
|
return render_template('show_stack_detail.html', stack=stack)
|
||||||
|
|
||||||
|
from csv import DictWriter
|
||||||
|
import io
|
||||||
|
|
||||||
|
@app.route('/export/csv', methods=['GET'])
|
||||||
|
def export_csv ():
|
||||||
|
output = io.StringIO()
|
||||||
|
fieldnames = ['title', 'authors']
|
||||||
|
csv = DictWriter(output,fieldnames)
|
||||||
|
csv.writeheader()
|
||||||
|
# for i in range(10):
|
||||||
|
# csv.writerow({'ID': i, 'fruit': "Tomato"})
|
||||||
|
for book in Book.query.order_by("title"):
|
||||||
|
authors = ", ".join([x.author_name for x in book.authors])
|
||||||
|
csv.writerow({"title": book.title, "authors": authors})
|
||||||
|
resp = Response(output.getvalue(), mimetype="text/plain")
|
||||||
|
# resp.headers["Content-Disposition"] = "attachment;filename=export.csv"
|
||||||
|
return resp
|
||||||
###
|
###
|
||||||
# The API
|
# The API
|
||||||
###
|
###
|
||||||
|
@ -39,7 +39,7 @@ with open(args.csv) as f:
|
|||||||
if stack:
|
if stack:
|
||||||
b = db.session.query(Stack).filter_by(stack_name=stack).first()
|
b = db.session.query(Stack).filter_by(stack_name=stack).first()
|
||||||
if b == None:
|
if b == None:
|
||||||
b = Stack(stack_name=stack, stack_description=stack_description)
|
b = Stack(stack_name=stack, stack_description=None)
|
||||||
|
|
||||||
db.session.add(b)
|
db.session.add(b)
|
||||||
book.stacks.append(b)
|
book.stacks.append(b)
|
||||||
|
Loading…
Reference in New Issue
Block a user