Showing posts with label jQuery. Show all posts
Showing posts with label jQuery. Show all posts

Saturday, January 29, 2011

How to get data from Google App Engine for python with jQuery

GAE side:
import simplejson
...
class HistoryHandler(webapp.RequestHandler):
def get(self):
viewerid = self.request.get('viewerid')
query = "SELECT * FROM dbmodel where viewerid = '" + viewerid + "'"
datas = db.GqlQuery(query)
result = []
for data in datas:
r = {}
r["key"] = data.key().id()
r["unreadflag"] = data.unreadflag
result.append(r)
self.response.out.write(simplejson.dumps(result))
jQuery side:
    $.get('http://xxxxxxxx.appspot.com/historydata signed', {viewerid : viewerid}, function(results) {
      if(results.length == 0){
      ...
      }
      else{
              //when results is an object, this "i" is a hash key.
              //when results is an array, this "i" is an index.
     $.each(results, function(i, r) {
     alert(r.unreadflag);
     });
      }
    }, 'json');
P.S.
My English is not good enough.
If there is a mistake and an anxious point,teach me softly.

How to post data to Google App Engine for python with jQuery

jQuery side:
$.post(
"http://xxxxxxxxxxxxxxxxx.appspot.com/introdata",
{"viewerid": viewerid, "fromid": from, "toid": to, "introreason": reason},
function(data, status) {
$("#oktext").css('font-size', '12px').css("font-weight", "bold").css("color", "red").fadeIn(2000);
$("#oktext").fadeOut(5000);
}
);
GAE side:

from django.utils import simplejson
...

class AddHandler(webapp.RequestHandler):
       ...
def post(self):
viewerid = self.request.get('viewerid')
data = introData(viewerid=viewerid)
data.fromid = self.request.get('fromid')
data.toid = self.request.get('toid')
data.introreason = self.request.get('introreason')
data.unreadflag = '1'
data.put()
...
def main():
application = webapp.WSGIApplication(
[
('/introdata',AddHandler),
...
],
debug=True)
wsgiref.handlers.CGIHandler().run(application)

if __name__ == '__main__':
main()