def post_details(post_id, related): post_response = post_select(post_id) if post_response is None: raise Exception("post: post with id = " + post_id + " not found") if "user" in related: post_response["user"] = db_users_func.user_details(post_response["user"]) if "thread" in related: post_response["thread"] = db_threads_funcs.thread_details(thread_id=post_response["thread"], related=[]) if "forum" in related: post_response["forum"] = db_forums_funcs.forum_details(short_name=post_response["forum"], related=[]) return post_response
def details(request): if request.method == "GET": request_data = return_GET_params(request) required_data = ["thread"] related = return_related(request_data) try: params_are_right(request=request_data, required=required_data) thread = db_threads_funcs.thread_details(thread_id=request_data["thread"], related=related) except Exception as e: return return_error(e.message) return return_response(thread) else: return HttpResponse(status=400)