在Flask

时间:2017-11-08 18:49:28

标签: python flask

我是Flask的新手。我想单击inputs.html文件中的按钮来执行两项任务,即将表单数据提交到数据库(现在正常运行)并运行另一个函数,该函数根据刚刚提交到数据库的输入进行一些计算。

inputs.html文件包含以下代码

   

  <form action = "{{ url_for('addrec') }}" method = "POST">
     <h3>Inputs</h3>

     Number of Students<br>
     <input type = "text" name = "stu" /></br>

     Number of Tasks<br>
     <input type = "text" name = "tasks" /><br>

     <input type = "submit" value = "Submit" onsubmit="{{ url_for('my_link')}}"/>
     <br>

  </form>

在app.py中,我有以下代码来处理表单数据

@app.route('/addrec',methods = ['POST', 'GET'])
def addrec():
  if request.method == 'POST':
   try:
     students = request.form['stu']
     tasks = request.form['tasks']

     with sql.connect("database.db") as con:
        cur = con.cursor()

        cur.execute("INSERT INTO inputs (students,tasks) 
         VALUES (?,?)",(students,tasks))

        con.commit()
        msg = "Record successfully added"
   except:
     con.rollback()
     msg = "error in insert operation"

   finally:
     return render_template("result.html",msg = msg)

@app.route('/my_link')
def my_link():
   print 'My Link Works!'

但是,当我单击按钮表单时,正确添加到数据库的详细信息。但我没有看到消息&#34; My Link Works&#34;在调试器中。这是否意味着当我单击按钮时我无法执行这两项任务(将记录插入数据库并运行其他功能)?

有没有办法实现这个目标?

请帮忙。

0 个答案:

没有答案