Quantcast
Channel: CSDN博客推荐文章
Viewing all articles
Browse latest Browse all 35570

python笔记(6)——tornado&ajax

$
0
0

tornado与ajax并用,ajax用于实现前台与后台的交互。实现了一个小小的demo,应该是可以的:

$("#submitComment").click(function() {
			var comment = encodeURI(encodeURI($("#comment").val()));
			if(comment == "") {
				alert("please input your comment!");
			}

			$.ajax({
				type: 'POST',
				url: 'http://localhost:8000/twitter/'+"{{name}}",
				data: {"comment" : comment},

				success: function(data) {
					if(data == "1") {
						showComment(comment);
					}else {
						alert("fail comment!");
					}
				}
			});
		});
下面用$.ajax向后台传数据,success函数用于定义成功后的操作。要实现的效果是微博的无刷新评论,我的思路是将数据传到后台后,后台将数据存入数据库,若成功则返回‘1’,若不成功,则返回‘0’;ajax里面的success函数检测到后台返回的这个数据,选择是否进行评论的展示。

后台部分代码如下:

    def post(self, name):
        name = tornado.escape.xhtml_escape(self.current_user)

        msg = self.get_argument("comment")
        temp = {"auther": name, "time": "Nov 26 2013 10:30:00", "content": msg}

        conn = pymongo.Connection("localhost", 27017)
        db = conn.twitterDB
        userSets = db.userSets

        if msg is not None:
            doc = userSets.find_one({"name": name})
            doc['twitters'].insert(0, temp)
            userSets.save(doc)
            self.write("1")


作者:SDDCCCC 发表于2013-12-29 4:35:23 原文链接
阅读:0 评论:0 查看评论

Viewing all articles
Browse latest Browse all 35570

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>