1

我正在使用 Freebase Suggest,一个 JQuery 搜索表单:

<script type="text/javascript">
  $(function() {
    $("#game-search").suggest({type:'/games/game'}).bind("fb-select", function(e, data) {
    $("#game-id").val(data.id);
    $("#game-name").val(data.name);
    });
  });
</script>

<form name="input" action="/game" method="post">
  <input class="search-box" type="text" id="game-search"/>
  <input type="hidden" name="game_id" id="game-id" />
  <input type="hidden" name="game_name" id="game-name" />
  <input class="button" value="Go" type="submit"/>
</form>

此 POST 将返回一个显示游戏数据的页面。但我希望显示网址成为此页面的永久链接。现在,无论搜索返回什么游戏,url都是foo.com/game,但永久链接是foo.com/game/id/mid(id和mid是参考id)。

在我的处理程序中,我返回使用:

self.response.out.write(template.render(path, 
                                        template_values, 
                                        debug=DEBUG))

我怀疑也有一种重定向方法,但不熟悉如何重定向。

UDPATE:似乎不清楚我要问/做什么。POST 通过 JQuery 将 id 传递给处理程序。POST 的路径是 /game。我希望结果页面显示 URL /game/id/mid,基本上我想构建并显示永久链接。也许这就像在 POST 中构造 Game 对象一样简单,然后重定向到 GET(使用永久链接 URL 结构),然后 GET 呈现模板。

4

1 回答 1

0

首先你应该配置 app.yaml:

- url: /game/(.*?)/(.*?)
script: game/yourgame.py

然后在 yourgame.py 中将帖子重定向到永久链接网址:

self.redirect('/game/your permalink url')
于 2011-08-23T08:16:47.613 回答