def addToStream(self, follower): query = Stream.all() query.filter("userid = ", follower) query.filter("postkey = ", self.postkey) result = query.fetch(1000) if len(result) == 0: stream = Stream() stream.userid = follower stream.postkey = self.postkey stream.post = self.postkey.post #Post.get(self.postkey) stream.put()
def post(self): self.response.headers.add_header("Access-Control-Allow-Origin", "http://www.jonathonduerig.com"); postid = self.request.get("postid") userid = self.request.get("userid") posts = [] followed = [] if postid: query = Post.all() query.filter("postid = ", postid) posts = query.fetch(1000) elif userid: query = Stream.all() query.filter("userid = ", userid) query.order("-created") posts = query.fetch(30) query = Relation.all() query.filter("follower = ", userid) followed = query.fetch(1000) resultList = [] for p in posts: resultTags = [] postkey = "" outPostid = "" if postid: postkey = p.key() outPostid = postid else: postkey = p.postkey.key() outPostid = p.postkey.postid query = Tag.all() query.filter("postkey = ", postkey) tags = query.fetch(1000) for t in tags: found = False for f in followed: if t.userid == f.user: found = True break pass if found or postid: tag = {'user': t.userid, 'key': t.tag_key, 'value': t.tag_value} resultTags.append(tag) pass resultList.append({'postid': outPostid, 'post': p.post, 'tags': resultTags}) resultStr = json.dumps(resultList, sort_keys=True, indent=2) self.response.out.write(resultStr)