AJax技术

(十五)Flask 学习(4)

字号+ 作者:H5之家 来源:H5之家 2017-03-23 16:00 我要评论( )

变量看起来有些多,但是函数调用很简单。假设有一篇 id 为 23,使用西班牙语写的 blog,用户想要翻译成英语。这个函数的调用如下: translate('es','en','#post23','#translation23','#loading23') 最后我们需要实现

变量看起来有些多,但是函数调用很简单。假设有一篇 id 为 23,使用西班牙语写的 blog,用户想要翻译成英语。这个函数的调用如下:

translate('es', 'en', '#post23', '#translation23', '#loading23')

最后我们需要实现的 translate(),我们将不会在 post.html 子模板中编写这个函数,因为每一篇 blog 内容会有些重复。我们将会在基础模版中实现这个函数,下面就是这个函数(文件 app/templates/base.html):

<script> function translate(sourceLang, destLang, sourceId, destId, loadingId) {     $(destId).hide();     $(loadingId).show();     $.post('http://my.oschina.net/translate', {         text: $(sourceId).text(),         sourceLang: sourceLang,         destLang: destLang     }).done(function(translated) {         $(destId).text(translated['text'])         $(loadingId).hide();         $(destId).show();     }).fail(function() {         $(destId).text("{{ _('Error: Could not contact server.') }}");         $(loadingId).hide();         $(destId).show();     }); } </script>

这段代码依赖于 jQuery,需要详细了解上述几个函数的话,请查看 jQuery。

结束语

近来当使用 Flask-WhooshAlchemy 为全文搜索的时候,会有一些数据库的警告。在下一章的时候,我们针对这个问题来讲讲 Flask 应用程序的调试技术。

如果你想要节省时间的话,你可以下载 microblog-0.15.zip。


 

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

相关文章
网友点评