【问题标题】:Concatenate two string variables in Python's Tornado framework在 Python 的 Tornado 框架中连接两个字符串变量
【发布时间】:2014-04-30 22:25:23
【问题描述】:

我一直在查看 Tornado API,但不知道如何连接两个字符串,其中一个是键入的,一个是变量。 Tornado 似乎没有继承自 Jinja2/Django 模板。

最终目标是使用动态生成的变量作为 GET 请求属性。我可以使用带有隐藏变量的表单,但是要同时呈现数百个生成值。

我已经包含了一个示例作为工作证明,但我也尝试了使用 Django/Jinja2 模板的示例。有什么建议吗?

<div class="row">
    <div class="small-6 columns">
        <table>
            <th>Name</th>
            <th>Broken</th>
            <th>Placed</th>
            <th>Kills</th>
            <th>Deaths</th>
            {% for player in players %}
                <tr>
                    <td><a href='/players/' + {{ player.player }}>{{player.player}}</a></td>
                    <td><a href="#">{{player.blocks_broken}}</a></td>
                    <td><a href="#">{{player.blocks_placed}}</a></td>
                    <td><a href="#">{{player.kills}}</a></td>
                    <td><a href="#">{{player.deaths}}</a></td>
               </tr>
           {% end %}
       </table>
   </div>
</div>

这会产生以下 URL:localhost:8888/players

想要的输出是:localhost:8888/players/bob

【问题讨论】:

    标签: python templates web tornado jinja2


    【解决方案1】:

    为什么不把那行写成:

    <td><a href='/players/{{ player.player }}'>{{player.player}}</a></td>
    

    不需要连接,它会在浏览器之前构建。

    【讨论】:

    • 您也可以通过将连接放在表达式中来做到这一点:href="{{ '/players/' + player.player }}"
    • 我真的不敢相信我没想过要尝试这个。谢谢! Ben,我注意到你是 Tornado 的开发负责人。是否有 Tornado 相关问题的官方论坛?
    猜你喜欢
    • 2015-06-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-08-08
    • 2017-07-22
    相关资源
    最近更新 更多