Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/359.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用不同的';表格';对于不同的方法_Python_Google App Engine_Jinja2 - Fatal编程技术网

Python 使用不同的';表格';对于不同的方法

Python 使用不同的';表格';对于不同的方法,python,google-app-engine,jinja2,Python,Google App Engine,Jinja2,我希望我能正确地表达自己,就这样 我有一个html页面的处理程序,其目标是编辑“章节”。在此页面中列出了章节,您可以使用按钮添加更多章节。因此,当您第一次打开页面时,会列出章节,并显示一个按钮来添加更多内容。如果您单击“添加”,它将显示相同的页面,但带有章节信息表单 我的问题是在重新加载页面时传递我们正在编辑的章节的信息,因为a无法传递“tut_键”——对章节的引用 editTut.html: {% for chap in chaps %} Title: {{ chap.title

我希望我能正确地表达自己,就这样

我有一个html页面的处理程序,其目标是编辑“章节”。在此页面中列出了章节,您可以使用按钮添加更多章节。因此,当您第一次打开页面时,会列出章节,并显示一个按钮来添加更多内容。如果您单击“添加”,它将显示相同的页面,但带有章节信息表单

我的问题是在重新加载页面时传递我们正在编辑的章节的信息,因为a无法传递“tut_键”——对章节的引用

editTut.html:

{% for chap in chaps %}
       Title: {{ chap.title}}<br>
    {% endfor %}

{% if not editMode or editMode == 0 %}
<form ????????>
    <input id="tutBtnNext" type="submit" value="Add">
</form>
{% endif %}

{% if editMode == 1 %}
    <form method="post">
        <!-- form stuff -->
    </form>
{% endif %}

我希望我能正确理解您的意思,我必须根据标准加载表单,并且这样做:

    if not editMode:
            params = {} 
            form = 'add_mode.html'
    else:
            params = {"data", data}
            form = 'edit_mode.html'

    return self.render_template(form, **params)

在这里设置cookie可能是一个不错的选择。当他们选择章节时,您可以发送指定该选项的cookie。然后,每次加载页面时,只需检查cookie。如果cookie存在且有效,您应该知道它们正在编辑的章节

您可以在Google App engine中设置cookie,如下所示:

self.response.set_cookie('name', 'value', expires=expire_time, path='/', domain='example.com')
value
可以是引用您正在使用的章节的内容。如果您将
expires
保留为空,则应在他们关闭浏览器时过期(您可能需要)

您可以通过以下方式获得cookie:

self.request.cookies.get('name','')

然后,您可以将该cookie分配给一个变量,并检查其章节信息。

让我确保我理解。问题是,当有人重新加载页面时,是否记得您已经在编辑的章节?如果这是正确的,那么使用饼干可能是一个好方法。我完全忘记了饼干。。。我将尝试一下Thanksool,我已经添加了它作为一个答案,以防将来对其他人有所帮助。但是我不想使用其他html页面。正如内特所说,我可能需要使用cookiesnp,很高兴你找到了解决方案
self.request.cookies.get('name','')