ฉันกำลังพยายามสร้างปุ่มถัดไปซึ่งควรแสดงเพียงระเบียนเดียวต่อหน้า ฉันรู้ว่าเราสามารถใช้การแบ่งหน้าได้ แต่ฉันอยากได้เพียงปุ่มถัดไปเท่านั้น ดังนั้นฉันจึงอ่านโพสต์ต่อไปนี้และนำไปปฏิบัติ: ตัวควบคุม คำถาม ของฉัน:
class QuestionsController < ApplicationController
before_action :set_page, only: [:view]
QUESTIONS_PER_PAGE = 1
def view
questions=[]
@evaluation = Evaluation.pluck(:content).last
@evaluation.each do |question|
questions << question
end
@questions=Question.where(:content => questions).limit(QUESTIONS_PER_PAGE).offset(@page*QUESTIONS_PER_PAGE)
#@questions=Question.where(:content => questions).paginate(page: params[:page],per_page: 1)
end
private
def set_page
@page = params[:page] || 0
end
มุมมองของฉัน.html.erb ซึ่งให้ข้อผิดพลาด: ไม่มีการแปลงจำนวนเต็มเป็นสตริงโดยปริยาย
<h1>Self-Evaluation Exam</h1>
<table id="questions">
<thead>
<tr>
<th>Content </th>
</tr>
</thead>
<tbody>
<% @questions.each do |question| %>
<tr>
<td><%= question.content %></td>
<td><%= check_box_tag question.c1 %></td>
<td><%= question.c1%></td>
<td><%= check_box_tag question.c2 %></td>
<td><%= question.c2%></td>
<td><%= check_box_tag question.c3 %></td>
<td><%= question.c3%></td>
<td><%= check_box_tag question.c4 %></td>
<td><%= question.c4%></td>
<td><%= check_box_tag question.c5 %></td>
<td><%= question.c5%></td>
</tr>
<% end %>
</tbody>
</table>
<div id = "nav">
<%= button_to 'Next',questions_path(page: @page + 1) %># this line gives error: no implicit conversion of Integer into String
</div>
<li><%= link_to 'Personal Evaluation',instructions_student_path %></li>
แบ่งหน้าโดยไม่มีอัญมณี ถัดไป ก่อนหน้า ปุ่มสำหรับ Name.order(:id).limit(10).offset(0) มันแสดงหน้าแรก แต่เมื่อฉันคลิกที่ปุ่ม ฉันได้รับข้อผิดพลาด PS: ปุ่มถัดไปควรเปลี่ยนเป็นส่ง เมื่อมันเป็นบันทึกสุดท้าย ขอบคุณ