0
今、私はすべての質問が1つずつある1ページのクイズを持っています。 私がやってみたいのは、サイトを変更せずに各質問を次回に/前に循環させ(すべての質問を繰り返して)、ユーザーがフォームを送信して結果を確認できるようにすることです。 ページネイトの宝石はそれほどではありません。ページが区切られた質問のクイズ
レールでのみ行う方法はありますか?
今、私はすべての質問が1つずつある1ページのクイズを持っています。 私がやってみたいのは、サイトを変更せずに各質問を次回に/前に循環させ(すべての質問を繰り返して)、ユーザーがフォームを送信して結果を確認できるようにすることです。 ページネイトの宝石はそれほどではありません。ページが区切られた質問のクイズ
レールでのみ行う方法はありますか?
これは非常に簡単で、無限のスクロールをレールで検索すると、無限の例があります。私はあなたのために全体のコードを書くつもりはありませんが、あなたが始めるために:
Controller
@quiz = Quiz.find_by(params[:id])
@questions = @quiz.questions.order('created_at desc').paginate(page: params[:page], per_page: 10)
respond_to do |format|
format.js
end
end
view
@questions.each do |question|
question.content
end
will_paginate @questions
<div id="more_questions_btn" style="display: none">
More
</div>
jquery
if ($('#more_questions).size > 0) {
$('.pagination').hide()
$('#more_questions_btn).show()
}
var url= $('.pagination .next_page a').attr('href')
('#more_questions_btn').on('click', function() {
$.getscript(url)
}
、その後、あなたが質問の次のページを追加したり、質問の現在のセットを置き換えるためにjs.erbファイルを使用する必要があります。