我正在使用 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 呈现模板。