2015-02-06 70 views
0

我有模板,這是做對錶中的字段的一些操作:如何從模板傳遞參數來查看瓶

<tr> 
    {% for field in row %} 
     {% if field is link_field %} 
      <td><a href="{{ url_for('munin') }}">{{ field | table_field | safe }}</a></td> 
     {% else %} 
      <td>{{ field | table_field | safe }}</td> 
     {% endif %} 
    {% endfor %} 
</tr> 

我的看法:

@app.route("/munin") 
def munin(field): 
     return redirect("http://{0}/munin".format(field)) 

我想送場來自模板。

當這些超鏈接的地址http是一個字段的屬性(例如ip地址)時,整個想法是,將表中的某些字段作爲超鏈接連接到外部網站。

我試圖做到這一點:

<tr> 
    {% for field in row %} 
     {% if field is link_field %} 
      <td><a href="{{ url_for('munin', field=field) }}">{{ field | table_field | safe }}</a></td> 
     {% else %} 
      <td>{{ field | table_field | safe }}</td> 
     {% endif %} 
    {% endfor %} 
</tr> 

但不是送我去網站:

http://field/munin 

它送我到:

http://mysite/munin?field=field 

回答

4

你的路由配置沒有按不處理任何field參數。調整您的路線:

@app.route("/munin/<field>") 
def munin(field): 
    return redirect("http://{0}/munin".format(field)) 

接受路徑參數。

+0

哇,爲什麼我這麼愚蠢?謝謝,那解決了一切。 – Ojmeny 2015-02-06 15:30:13

0
from flask import request 
field = request.args.get('field') 

沒有工作。