我正在开发一个烧瓶应用程序,其中有两页分页的问题, 问题是点击数字 2 更改页面不会更改问题,我不知道应该由哪部分代码负责,如果需要任何代码片段来帮助解决此问题,请告诉我编辑问题。
后端
def paginate_questions(request, selection):
page = request.args.get('page', 1, type=int)
start = (page - 1) * QUESTIONS_PER_PAGE
end = start + QUESTIONS_PER_PAGE
questions = [question.format() for question in selection]
current_questions = questions[start:end]
return current_questions
@app.route('/questions')
def get_paginated_questions():
categories = Category.query.order_by(Category.id).all()
selection = Question.query.order_by(Question.id).all()
current_questions = paginate_questions(request, selection)
if len(current_questions) == 0:
abort(404)
return jsonify({
'success': True,
'questions': current_questions,
'total_questions': len(selection),
'current_category': None,
'categories': {category.format()['id']: category.format()['type']
for category in categories}
})
前端
getQuestions = () => {
$.ajax({
url: `/questions`, //TODO: update request URL
type: "GET",
success: (result) => {
this.setState({
questions: result.questions,
totalQuestions: result.total_questions,
categories: result.categories,
currentCategory: result.current_category })
return;
},
error: (error) => {
alert('Unable to load questions. Please try your request again')
return;
}
})
}
selectPage(num) {
this.setState({page: num}, () => this.getQuestions());
}