21 lines
720 B
Python
21 lines
720 B
Python
from sanic import response
|
|
from datetime import datetime, timedelta
|
|
from app.core.models.node_storage import StoredContent
|
|
|
|
|
|
async def s_api_v1_content_list(request):
|
|
offset = int(request.args.get('offset', 0))
|
|
limit = int(request.args.get('limit', 100))
|
|
assert 0 <= offset, "Invalid offset"
|
|
assert 0 < limit <= 1000, "Invalid limit"
|
|
|
|
content_list = request.ctx.db_session.query(StoredContent).filter(
|
|
'content' in StoredContent.type
|
|
).order_by(StoredContent.created.desc()).offset(offset).limit(limit).all()
|
|
result = {}
|
|
for content in content_list:
|
|
content_json = content.json_format()
|
|
result[content_json["cid"]] = content_json
|
|
|
|
return response.json(result)
|