【发布时间】:2015-07-14 09:20:08
【问题描述】:
我有一个包含一些 Python 代码和 HTML 模板的 html 模板。这是下面的示例。
Python:
cur1 = g.db.execute('select ID from Students')
students = [dict(ID=row[0]) for row in cur1.fetchall()]
cur2 = g.db.execute('select ID from Quizzes')
quizzes = [dict(ID=row[0]) for row in cur2.fetchall()]
if request.method == 'POST':
if not session.get('logged_in'):
abort(401)
g.db.execute('insert into Results (quiz,student,grade) values '\
'(?,?,?)',[request.form['Quiz'],
request.form['Student'],
request.form['grade']])
g.db.commit()
return render_template('add_result.html',students=students,quizzes=quizzes)
HTML:
<form action="{{ url_for('add_result') }}" method=post>
<select name="Quiz">
{% for quiz in quizzes %}
<option value="{{ quiz }}">{{ quiz.ID }}</option>
{% endfor %}
</select>
<select name="Student">
{% for student in students %}
<option value="{{ student }}">{{ student.ID }}</option>
{% endfor %}
</select>
<input type="number" name="grade">
<input type="submit" value=Submit>
</form>
它以我想要的格式(整数)输出下拉列表,但是,例如,假设 quiz #1 和 student #1 的成绩为 100,然后将它们作为
输入到 SQLite(2, u"{'ID': 1}", u"{'ID': 1}", 100.0)
我怎样才能得到这个输出?:
(2,1,1,100.0)
【问题讨论】:
-
您希望“此输出”出现在哪里?您要改进哪些具体代码?
-
@amccormack 我只是想让它们以这种格式输入数据库。我正在尝试改进 g.db.execute 语句
标签: python sqlite flask jinja2