def get_one_data(req, create_new): app_key = req.request.get("app_key") data_key = req.request.get("data_key") user_id = req.request.get("user_id") query = ApiPerpetuationData.all() query.filter("app_key =", db.get(app_key)) query.filter("data_key =", data_key) query.filter("user_id =", user_id) if query.count() >= 1: return query[0] if create_new == 0: return None data = ApiPerpetuationData() data.app_key = db.get(app_key) data.user_id = user_id data.data_key = data_key return data
def get_ranking(req): app_key = req.request.get("app_key") data_key = req.request.get("data_key") order = req.request.get("order") query = ApiPerpetuationData.all() query.filter("app_key =", db.get(app_key)) query.filter("data_key =", data_key) if order == "ascending": query.order("int_data") query.filter("int_data !=", 0) else: query.order("-int_data") data_list = query.fetch(limit=10, offset=0) dic = [] for data in data_list: one_user = data.user_id bookmark = ApiObject.get_bookmark_of_user_id(one_user) if bookmark: one_dic = ApiObject.create_user_object(req, bookmark) one_dic["text_data"] = data.text_data one_dic["int_data"] = data.int_data dic.append(one_dic) dic = {"status": "success", "message": "", "response": dic} return dic