python
  • html
  • mysql
  • flask
  • 2017-04-22 76 views 0 likes 
    0

    我正在使用Flask和MySQL创建一个基于数据库的表格。现在,当用户点击某一行时,我需要重定向到另一个页面,该页面会告诉我更多关于该行的信息。如何在重定向时获取表格行详细信息

    我有重定向的部分,但我如何获得关于该行在后端的信息?

    这里是我的HTML代码:

    <tbody> 
        {% for row in resultPois %} 
        <tr onclick="window.document.location='/pageDetail';"> 
         <td>{{ row[0] }}</td> 
         <td>{{ row[1] }}</td> 
         <td>{{ row[2] }}</td> 
         <td>{{ row[3] }}</td> 
         <td>{{ row[4] }}</td> 
         <td>{{ row[5] }}</td> 
        </tr> 
        {% endfor %} 
    </tbody> 
    

    在烧瓶方面:

    @app.route('/pageDetail') 
    def page_detail(): 
        # get info here to render page! 
        return render_template('page_detail.html') 
    

    回答

    1

    你可以尝试flask.url_for(endpoint, **values)当你想从模板中的变量传递到后端。

    在瓶模板:

    <tbody> 
        {% for row in resultPois %} 
        <tr onclick="window.location.href='{{ url_for('page_detail', rowData=row) }}';"> 
         <td>{{ row[0] }}</td> 
         <td>{{ row[1] }}</td> 
         <td>{{ row[2] }}</td> 
         <td>{{ row[3] }}</td> 
         <td>{{ row[4] }}</td> 
         <td>{{ row[5] }}</td> 
        </tr> 
        {% endfor %} 
    </tbody> 
    

    在瓶观点:

    @app.route('/pageDetail/<rowData>') 
    def page_detail(rowData): 
        # you can use the the rowData from template 
        return render_template('page_detail.html' 
    

    顺便说一句,我的建议来设计的前部,更好地使按钮与表行中的一列,当点击按钮,然后触发onclick函数调用url_for,这将更加用户友好。

    相关问题