レンダリングページのこのコードで何が問題になるか分かりません。App Engine Python:テンプレートが正しくレンダリングされない
def post(self):
acct = self.request.get('account')
pw = self.request.get('password')
que = db.Query(User)
que = que.filter('account =', acct)
que = que.filter('password =', pw)
results = que.fetch(limit = 1)
values = { }
newval = dict(values)
newval['path'] = self.request.path
if len(results) > 0:
path = os.path.join(os.path.dirname(__file__), 'templates/sites.htm')
self.response.out.write(template.render(path, {}))
は私が「loginscreen.htm」という名前のページにあるログインフォームからそれを呼び出します。アプリケーションは、このコードの一部に達する :
if len(results) > 0:
path = os.path.join(os.path.dirname(__file__), 'templates/sites.htm')
self.response.out.write(template.render(path, {}))
をして「sites.htm」にリダイレクトしようとするには、ページ「sites.htm」を正しく表示されますが、アドレスバーにそれはまだ示しています:
'にhttp:// localhost:8080 /ログイン'(ルート "loginscreen.htm" からの着信要求を "/はログイン")'にhttp:// localhost:8080/sites.htm'べき 代わりに表示されます。
この問題の主な問題は、ページをリロードすると、「フォーム再送信の確認」ダイアログが表示され、ユーザーがフォームを再度送信できるようになることです。 しかし、私は
self.redirect('sites.htm')
でアドレスバーが表示さ'にhttp:// localhost:8080/sites.htm'
path = os.path.join(os.path.dirname(__file__), 'templates/sites.htm')
self.response.out.write(template.render(path, {}))
を交換する場合正しくを。
コードに何が問題なのですか?
申し訳ありませんが、私はこの質問音をもっと複雑にする必要があります。
ありがとうございます!