def getMoreComments(request): if request.method == 'POST': ret = {} xid = request.POST.get('xid') remainder = request.POST.get('remainder') if xid.isdigit() and remainder.isdigit(): idx = int(remainder) #目前剩余条数 pref = int(idx - 10) #这次取完还剩余的条数 if pref < 0: pref = 0 reply_obj = models.TvReply.objects.filter(tv__id=xid).values( 'id', 'content', 'create_date', 'user_id')[pref:idx] res_list = [pref] for item in reply_obj: try: user_obj = models.User.objects.get(id=item['user_id']) except Exception: continue item['thumb_s'] = str(user_obj.thumb_s) item['uname'] = str(user_obj.username) item['create_date'] = my_datetrans(item['create_date']) #获取该评论下的回复 rr_obj = models.TvReplyReply.objects.filter( tv_reply__id=item['id']).values('id', 'content', 'create_date', 'user_id')[:5] rr_list = [] for rr in rr_obj: #获取每个回复的用户信息 try: rr_user_obj = models.User.objects.get(id=rr['user_id']) except Exception: continue rr['thumb_s'] = str(rr_user_obj.thumb_s) rr['uname'] = str(rr_user_obj.username) rr['create_date'] = my_datetrans(rr['create_date']) rr_list.append(rr) item['rr'] = rr_list item['rr_counts'] = models.TvReplyReply.objects.filter( tv_reply__id=item['id']).count() #评论的like item['like_counts'] = models.TvReplyLike.objects.filter( tv_reply_like__id=item['id']).count() res_list.append(item) return HttpResponse(json.dumps(res_list)) else: ret['msg'] = '302' return HttpResponse(json.dumps(ret)) else: raise Http404
def getMoreComments(request): if request.method == 'POST': ret = {} xid = request.POST.get('xid') remainder = request.POST.get('remainder') if xid.isdigit() and remainder.isdigit(): idx = int(remainder) #目前剩余条数 pref = int(idx - 10) #这次取完还剩余的条数 if pref < 0: pref = 0 reply_obj = models.ShowReply.objects.filter(show__id=xid).values( 'id', 'content', 'create_date', 'user_id')[pref:idx] print reply_obj.count() res_list = [pref] for item in reply_obj: try: user_obj = models.User.objects.get(id=item['user_id']) except Exception: continue item['thumb_s'] = str(user_obj.thumb_s) item['uname'] = str(user_obj.username) item['create_date'] = my_datetrans(item['create_date']) res_list.append(item) return HttpResponse(json.dumps(res_list)) else: ret['msg'] = '302' return HttpResponse(json.dumps(ret)) else: raise Http404
def getMoreReplies(request): if request.method == 'POST': ret = {} rid = request.POST.get('rid', None) remainder = request.POST.get('remainder', None) if not rid.isdigit() or not remainder.isdigit(): ret['msg'] = '302' return HttpResponse(json.dumps(ret)) uid = request.session.get('login_user_id', None) if not uid: ret['msg'] = '401' return HttpResponse(json.dumps(ret)) idx = int(remainder) #目前剩余条数 pref = int(idx - 5) #这次取完还剩余的条数 if pref < 0: pref = 0 rr_obj = models.TvReplyReply.objects.filter(tv_reply__id=rid).values( 'id', 'content', 'create_date', 'user_id')[pref:idx] res_list = [pref] for item in rr_obj: try: user_obj = models.User.objects.get(id=item['user_id']) except Exception: continue item['thumb_s'] = str(user_obj.thumb_s) item['username'] = str(user_obj.username) item['create_date'] = my_datetrans(item['create_date']) res_list.append(item) return HttpResponse(json.dumps(res_list, cls=CJsonEncoder)) else: raise Http404
def getLayerReplyItems(request): if request.method == 'POST': ret = {} page = request.POST.get('page') items_per_page = request.POST.get('items_per_page') prid = request.POST.get('prid') args_l = [page, items_per_page, prid] try: if all(args_l): for a in args_l: if not a.isdigit(): ret['msg'] = '302' return HttpResponse(json.dumps(ret)) page = int(page) items_per_page = int(items_per_page) else: ret['msg'] = '302' return HttpResponse(json.dumps(ret)) items_obj = models.PostLayerReply.objects.filter( post_reply__id=prid).values( 'id', 'content', 'user_id', 'target_user_id', 'create_date')[(page - 1) * items_per_page:page * items_per_page] for item in items_obj: origin_user_id = item['user_id'] try: target_user_obj = models.User.objects.get( id=item['target_user_id']) user_obj = models.User.objects.get(id=origin_user_id) except Exception: pass item['target_uname'] = target_user_obj.username item['create_date'] = my_tags.my_datetrans(item['create_date']) item['ulevel'] = my_tags.my_getUserLevel(user_obj.exp) item['posted_counts'] = my_tags.my_getPostedCounts( origin_user_id) item['fans_counts'] = my_tags.my_getFansCounts(origin_user_id) focused_list = [] focused_obj = models.UserFocus.objects.filter( origin_user_of_focus__id=origin_user_id) #回复主人关注的 for focus_item in focused_obj: focused_list.append(focus_item.target_user.id) focused_res = my_tags.my_focused(origin_user_id, focused_list) uid = request.session.get('login_user_id', None) if item['user_id'] == uid: item['focused'] = 2 #是自己 else: if focused_res: item['focused'] = 1 else: item['focused'] = 0 if user_obj.usercard_bg: item['ubg'] = str(user_obj.usercard_bg) else: item['ubg'] = '' item['usign'] = user_obj.mysign item['uname'] = user_obj.username item['uthumb_l'] = str(user_obj.thumb_l) item['uthumb_s'] = str(user_obj.thumb_s) res_list = list(items_obj) return HttpResponse(json.dumps(res_list)) except Exception, e: print e