1

JQuery検索フォームであるFreebaseSuggestを使用しています。

<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をこのページへのパーマリンクにします。現在、検索によって返されるゲームに関係なく、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で投稿をパーマリンクURLにリダイレクトします。

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