python
  • html
  • mysql
  • flask
  • 2017-04-22 107 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,這將更加用戶友好。

    相關問題