def destroy(cls, id): question = Question.find_or_fail(id) if not User.owns_question(question): return jsonify( dict(error="Access denied to delete question")), 401 question.delete() return jsonify(dict(message="Resource was removed successfully"))
def update(cls, id): question = Question.find_or_fail(id) if not User.owns_question(question): return jsonify({"error": "Access denied for updating question"}), 401 return jsonify( {"data": question.update(request.validate(validation_rules))})
def update(cls, question_id, answer_id): answer = Answer.find_or_fail(answer_id) if User.owns_answer(answer): answer.update(request.validate({"body": "required"})) return jsonify(dict(data=answer)), 200 question = Question.find_or_fail(question_id) if User.owns_question(question): question.update(dict(prefered_answer_id=answer_id)) return jsonify(dict(message="Answer marked as the preferred")), 200 return jsonify(dict(error="Access denied for updating answer")), 401
def show(cls, id): return jsonify({"data": Question.with_answers(id)})
def store(cls): return jsonify( {"data": Question.create(request.validate(validation_rules))}), 201
def index(cls): return jsonify({"data": Question.all()})
def index(cls, question_id): question = Question.find_or_fail(question_id).load("answers") return jsonify(dict(data=question["answers"]))
def store(cls, question_id): question = Question.find_or_fail(question_id) answer = question.answers().create(request.validate({ "body": "required" })) return jsonify(dict(data=answer)), 201
def destroy(cls, id): Question.find_or_fail(id).delete() return jsonify(dict(message="Resource was removed successfully"))
def update(cls, id): return jsonify({ "data": Question.find_or_fail(id).update( request.validate(validation_rules)) })
def show(cls, id): return jsonify({"data": Question.find_or_fail(id)})