def details(id, related): post = posts_query(id) if post is None: raise Exception("no post with id = "+id) if "user" in related: post["user"] = users.details(post["user"]) if "forum" in related: post["forum"] = forums.details(short_name=post["forum"], related=[]) if "thread" in related: post["thread"] = threads.details(id=post["thread"], related=[]) return post
def details(request): if request.method == "GET": request_info = GET_parameters(request) required_info = ["thread"] relate = get_relate(request_info) try: test_require(data=request_info, required=required_info) thread = threads.details(id=request_info["thread"], related=relate) except Exception as e: return return_error(e.message) return return_response(thread) else: return HttpResponse(status=400)