1

「チュートリアル」というエンティティを作成するためのフォームを含むページを作成するために、GoogleAppEngineを使用しています。次にヒットすると、ユーザーは以前に作成したチュートリアルのチャプターを作成するための別のフォームを使用できます。私の問題は、「チュートリアル」の参照を「章」に持ってくることです

新しいチュートリアルページのハンドラー:

class NewTut(FuHandler):
    def get(self):
        self.render('newTut.html')
    def post(self):
        title = self.request.get("title")
        tags = self.request.get("tags")
        tut = Tutorial(title=title, tags=tags)
        tut.put()

        self.redirect('/newchap' #should i put here 'tut'?#)

この部分は完全に機能しますがtut、チャプターを作成するときにこれをどのように使用しますか?

新しいチャプターページのハンドラー:

class NewChap(FuHandler):
    def get(self):
        self.render('newChapter.html')

    def post(self):
        tutorial = Tutorial(??????)
        title = self.request.get("chapTitle")
        content = self.request.get("content")
        note = self.request.get("note")

この参照を機能させるには、ここで何をする必要がありますか?

4

3 に答える 3

2

URLを介してチュートリアルIDを次のページに渡します。これは、getパラメーターとして、またはパスの一部として実行できます。getパラメータとしてこれを行う方法は次のとおりです。

self.redirect('/newchap?tutorial_id=%s' % tut.key)

次に、NewChapハンドラーで:

tutorial_id = request.get("tutorial_id")
tutorial = db.Key.from_path('Tutorial', tutID)
于 2013-01-15T01:15:05.200 に答える
1

NewChapでは機能しないため、@dlorenc回答の一部は機能します。だからこれは私がそれを機能させた方法です:

NewTutハドラーで:

self.redirect('/newchap?tutorial_id=%s' % tut.key)

NewChapハンドラーの投稿:

tutID = self.request.get("tutorial_id")
tutorial = db.Key.from_path('Tutorial', tutID)
于 2013-01-15T17:12:49.047 に答える
0

リダイレクトしてから'/newchap/%s' %tut.key.id()、リクエストでIDを取得する必要があります。

于 2013-01-14T23:35:37.007 に答える