db.execute("insert into houses(title, position, price, score, comments) values(%s, %s, %s, %s, %s)", "独立装修小别墅", "紧邻文津街", 280, 5, 128)
或
db.execute("insert into houses(title, position, price, score, comments) values(%(title)s, %(position)s, %(price)s, %(score)s, %(comments)s)", title="独立装修小别墅", position="紧邻文津街", price=280, score=5, comments=128)
执行语句主要用来执行非查询语句。
class InsertHandler(RequestHandler):
def post(self):
title = self.get_argument("title")
position = self.get_argument("position")
price = self.get_argument("price")
score = self.get_argument("score")
comments = self.get_argument("comments")
try:
ret = self.application.db.execute("insert into houses(title, position, price, score, comments) values(%s, %s, %s, %s, %s)", title, position, price, score, comments)
except Exception as e:
self.write("DB error:%s" % e)
else:
self.write("OK %d" % ret)
class GetHandler(RequestHandler):
def get(self):
"""访问方式为http://127.0.0.1/get?id=111"""
hid = self.get_argument("id")
try:
ret = self.application.db.get("select title,position,price,score,comments from houses where id=%s", hid)
except Exception as e:
self.write("DB error:%s" % e)
else:
print type(ret)
print ret
print ret.title
print ret['title']
self.render("index.html", houses=[ret])
class QueryHandler(RequestHandler):
def get(self):
"""访问方式为http://127.0.0.1/query"""
try:
ret = self.application.db.query("select title,position,price,score,comments from houses limit 10")
except Exception as e:
self.write("DB error:%s" % e)
else:
self.render("index.html", houses=ret)
"2|1:0|10:1476412069|5:count|4:NQ==|cb5fc1d4434971de6abf87270ac33381c686e4ec8c6f7e62130a0f8cbe5b7609"
<!DOCTYPE html>
<html>
<head>
<title>测试XSRF</title>
</head>
<body>
<form method="post">
<input type="hidden" name="_xsrf" value="2|543c2206|a056ff9e49df23eaffde0a694cde2b02|1476443353"/>
<input type="text" name="message"/>
<input type="submit" value="Post"/>
</form>
</body>
</html>