本文整理汇总了Python中questions.models.Answer.last_activity_for方法的典型用法代码示例。如果您正苦于以下问题:Python Answer.last_activity_for方法的具体用法?Python Answer.last_activity_for怎么用?Python Answer.last_activity_for使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类questions.models.Answer
的用法示例。
在下文中一共展示了Answer.last_activity_for方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: users
# 需要导入模块: from questions.models import Answer [as 别名]
# 或者: from questions.models.Answer import last_activity_for [as 别名]
def users(request):
"""Returns list of user karma information.
GET paramaters:
* daterange - 7d, 1m, 3m, 6m or 1y (default: 1y)
* sort - field to sort on (default: points). Order is always descending.
* page - starts at 1 (default: 1)
* pagesize - (default: 100)
Returns list of objects with the following fields:
userid, username, points, <action_types>
"""
form = UserAPIForm(request.GET)
if not form.is_valid():
return {'success': False, 'errors': form.errors}
daterange = form.cleaned_data.get('daterange') or '1y'
sort = form.cleaned_data.get('sort') or 'points'
page = form.cleaned_data.get('page') or 1
pagesize = form.cleaned_data.get('pagesize') or 100
mgr = KarmaManager()
users = mgr.top_users(daterange=daterange, type=sort, count=pagesize,
offset=(page - 1) * pagesize) or []
now = datetime.now()
action_types = KarmaManager.action_types.keys()
schema = ['id', 'username', 'lastactivity', 'points'] + action_types
user_list = []
for u in users:
user = [u.id, u.username]
last_activity = Answer.last_activity_for(u)
user.append((now - last_activity).days if last_activity else None)
user.append(mgr.count(u, daterange=daterange, type='points'))
for t in action_types:
user.append(mgr.count(u, daterange=daterange, type=t))
user_list.append(user)
return {
'success': True,
'results': user_list,
'schema': schema}
示例2: users
# 需要导入模块: from questions.models import Answer [as 别名]
# 或者: from questions.models.Answer import last_activity_for [as 别名]
def users(request):
"""Returns list of user karma information.
GET paramaters:
* daterange - 7d, 1m, 3m, 6m or 1y (default: 1y)
* sort - field to sort on (default: points). Order is always descending.
* page - starts at 1 (default: 1)
* pagesize - (default: 100)
Returns list of objects with the following fields:
userid, username, points, <action_types>
"""
form = UserAPIForm(request.GET)
if not form.is_valid():
return {"success": False, "errors": form.errors}
daterange = form.cleaned_data.get("daterange") or "1y"
sort = form.cleaned_data.get("sort") or "points"
page = form.cleaned_data.get("page") or 1
pagesize = form.cleaned_data.get("pagesize") or 100
mgr = KarmaManager()
users = mgr.top_users(daterange, type=sort, count=pagesize, offset=(page - 1) * pagesize) or []
now = datetime.now()
action_types = KarmaManager.action_types.keys()
schema = ["id", "username", "lastactivity", "points"] + action_types
user_list = []
for u in users:
user = [u.id, u.username]
last_activity = Answer.last_activity_for(u)
user.append((now - last_activity).days if last_activity else None)
user.append(mgr.count(daterange, u, type="points"))
for t in action_types:
user.append(mgr.count(daterange, u, type=t))
user_list.append(user)
return {"success": True, "results": user_list, "schema": schema}