我有一个网站,上面有一个在谷歌应用程序引擎上运行的联系人表单。提交后,我想重定向并向用户显示一条消息,让他知道消息已发送,这可以是一条警告消息,也可以是向html标记添加一个类。我该怎么做?你知道吗
我的python文件如下所示:
import webapp2
import jinja2
import os
from google.appengine.api import mail
jinja_environment = jinja2.Environment(autoescape=True,loader=jinja2.FileSystemLoader(os.path.join(os.path.dirname(__file__), 'templates')))
class index(webapp2.RequestHandler):
def get(self):
template = jinja_environment.get_template('index.html')
self.response.write(template.render())
def post(self):
vorname=self.request.get("vorname")
...
message=mail.EmailMessage(sender="...",subject="...")
if not mail.is_email_valid(email):
self.response.out.write("Wrong email! Check again!")
message.to="..."
message.body=""" Neue Nachricht erhalten:
Vorname: %s
... %(vorname,...)
self.redirect('/#Kontakt')
app = webapp2.WSGIApplication([('/', index)], debug=True)
我已经在我的html文件中尝试过:
<script>
function sentAlert() {
alert("Nachricht wurde gesendet");
}
</script>
<div class="submit">
<input type="submit" value="Senden" onsubmit="return sentAlert()"
id="button-blue"/>
</div>
但它在重定向之前执行,因此不起作用。 有人知道怎么做吗?你知道吗
重新定向后,将提供与发送电子邮件的邮件请求不同的请求。你知道吗
因此,您需要持久化关于跨请求发送的电子邮件的信息,将其保存在请求后处理程序代码中,并在随后的GET请求处理程序代码中检索它(无论是重定向的还是其他任何一个)。你知道吗
例如,要持久保存信息,可以使用用户的会话(如果已经有会话,请参见Passing data between pages in a redirect() function in Google App Engine)或GAE的memcache/datastore/GCS。你知道吗
一旦信息被检索到,你可以用任何你想用的方式。你知道吗
相关问题 更多 >
编程相关推荐