models.py 2.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. #!/usr/bin/env python
  2. # -*- coding=UTF-8 -*-
  3. # **************************************************************************
  4. # Copyright © 2016 jianglin
  5. # File Name: models.py
  6. # Author: jianglin
  7. # Email: xiyang0807@gmail.com
  8. # Created: 2016-05-20 13:32:12 (CST)
  9. # Last Update:星期日 2016-7-24 18:54:28 (CST)
  10. # By:
  11. # Description:
  12. # **************************************************************************
  13. from flask_login import current_user
  14. from maple import redis_data
  15. from datetime import datetime
  16. class RedisData(object):
  17. def set_topics():
  18. '''使用redis记录'''
  19. pipe = redis_data.pipeline()
  20. '''用户发帖数'''
  21. user = 'user:%s' % str(current_user.id)
  22. pipe.hincrby(user, 'topic', 1)
  23. pipe.hincrby(user, 'all:topic', 1)
  24. pipe.execute()
  25. def set_replies(qid):
  26. pipe = redis_data.pipeline()
  27. pipe.hincrby('topic:%s' % str(qid), 'replies', 1)
  28. pipe.execute()
  29. def set_read_count(qid):
  30. redis_data.hincrby('topic:%s' % str(qid), 'read', 1)
  31. def set_notice(user):
  32. redis_data.hincrby('user:%s' % str(user.id), 'notice', 1)
  33. def set_collect(user, num):
  34. redis_data.hincrby('user:%s' % str(user.id), 'collect', num)
  35. def set_love(user, num):
  36. redis_data.hincrby('user:%s' % str(user.id), 'love', num)
  37. def set_user():
  38. redis_data.hincrby('user:%s' % str(current_user.id), 'topic', 1)
  39. def set_user_all():
  40. redis_data.hincrby('user:%s' % str(current_user.id), 'all_topic', 1)
  41. # def set_email_send():
  42. # redis_data.hset('user:%s' % str(current_user.id), 'send_email_time',
  43. # datetime.utcnow())
  44. def get_repies_count(qid):
  45. pages = redis_data.hget('topic:%s' % str(qid), 'replies')
  46. return pages
  47. def get_pages(large, little):
  48. pages = redis_data.zscore(large, little)
  49. return pages
  50. def set_email_send(uid):
  51. redis_data.hset('user:%s' % str(uid), 'send_email_time',
  52. datetime.now())