add top shouts pagination
This commit is contained in:
parent
e3bc1c0c38
commit
e368ebf4e9
|
@ -25,5 +25,4 @@ def json_tables():
|
||||||
lc.append(d)
|
lc.append(d)
|
||||||
data[table] = lc
|
data[table] = lc
|
||||||
open('migration/data/'+table+'.json', 'w').write(json.dumps(lc,cls=DateTimeEncoder))
|
open('migration/data/'+table+'.json', 'w').write(json.dumps(lc,cls=DateTimeEncoder))
|
||||||
return data
|
|
||||||
|
|
||||||
|
|
|
@ -191,24 +191,24 @@ class ShoutSubscriptions:
|
||||||
subs.put_nowait(shout)
|
subs.put_nowait(shout)
|
||||||
|
|
||||||
@query.field("topViewed")
|
@query.field("topViewed")
|
||||||
async def top_viewed(_, info, limit):
|
async def top_viewed(_, info, page, size):
|
||||||
async with ShoutsCache.lock:
|
async with ShoutsCache.lock:
|
||||||
return ShoutsCache.top_viewed[:limit]
|
return ShoutsCache.top_viewed[page * size : (page + 1) * size]
|
||||||
|
|
||||||
@query.field("topMonth")
|
@query.field("topMonth")
|
||||||
async def top_month(_, info, limit):
|
async def top_month(_, info, page, size):
|
||||||
async with ShoutsCache.lock:
|
async with ShoutsCache.lock:
|
||||||
return ShoutsCache.top_month[:limit]
|
return ShoutsCache.top_month[page * size : (page + 1) * size]
|
||||||
|
|
||||||
@query.field("topOverall")
|
@query.field("topOverall")
|
||||||
async def top_overall(_, info, limit):
|
async def top_overall(_, info, page, size):
|
||||||
async with ShoutsCache.lock:
|
async with ShoutsCache.lock:
|
||||||
return ShoutsCache.top_overall[:limit]
|
return ShoutsCache.top_overall[page * size : (page + 1) * size]
|
||||||
|
|
||||||
@query.field("recents")
|
@query.field("recents")
|
||||||
async def recent_shouts(_, info, limit):
|
async def recent_shouts(_, info, page, size):
|
||||||
async with ShoutsCache.lock:
|
async with ShoutsCache.lock:
|
||||||
return ShoutsCache.recent_shouts[:limit]
|
return ShoutsCache.recent_shouts[page * size : (page + 1) * size]
|
||||||
|
|
||||||
@mutation.field("createShout")
|
@mutation.field("createShout")
|
||||||
@login_required
|
@login_required
|
||||||
|
|
|
@ -160,10 +160,10 @@ type Query {
|
||||||
getShoutComments(slug: String!): [Comment]!
|
getShoutComments(slug: String!): [Comment]!
|
||||||
|
|
||||||
# mainpage
|
# mainpage
|
||||||
topViewed(limit: Int): [Shout]!
|
topViewed(page: Int!, size: Int!): [Shout]!
|
||||||
topMonth(limit: Int): [Shout]!
|
topMonth(page: Int!, size: Int!): [Shout]!
|
||||||
topOverall(limit: Int): [Shout]!
|
topOverall(page: Int!, size: Int!): [Shout]!
|
||||||
recents(limit: Int): [Shout]!
|
recents(page: Int!, size: Int!): [Shout]!
|
||||||
|
|
||||||
# topics
|
# topics
|
||||||
topicsBySlugs(slugs: [String]): [Topic]!
|
topicsBySlugs(slugs: [String]): [Topic]!
|
||||||
|
|
Loading…
Reference in New Issue
Block a user