質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

RubyGems

RubyGemsはRubyによるプログラミングのためのパッケージマネジメントツールです。ユーザはこれを使用することで、Rubyライブラリのダウンロードやアップデートや、依存関係の自動解決が可能になります。

ページネーション

Webアプリケーションにおいて、1ページに収まらないコンテンツを、各ページへのリンクを並べてアクセスしやすくする手法をページネーションと呼びます。

Q&A

1回答

432閲覧

kaminariによるページネーション

Mpeatk

総合スコア6

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

RubyGems

RubyGemsはRubyによるプログラミングのためのパッケージマネジメントツールです。ユーザはこれを使用することで、Rubyライブラリのダウンロードやアップデートや、依存関係の自動解決が可能になります。

ページネーション

Webアプリケーションにおいて、1ページに収まらないコンテンツを、各ページへのリンクを並べてアクセスしやすくする手法をページネーションと呼びます。

0グッド

0クリップ

投稿2017/11/20 21:31

編集2017/11/20 21:36

現在、rubyを用いた本棚アプリの書籍画面にrukaminariを用いてページネーションを実装しようとしているのですが、以下のようなエラーコードが吐き出され、成功しません。
イメージ説明

なお、
app/controllers/book_controller.rbのようになっております。

class BooksController < ApplicationController
before_action :set_book, only: [:show, :edit, :update, :destroy]

def index
@books = Book.page(params[:page]).per(10)
end

GET /books

GET /books.json

def index
@books = Book.all
end

GET /books/1

GET /books/1.json

def show
end

GET /books/new

def new
@book = Book.new
end

GET /books/1/edit

def edit
end

POST /books

POST /books.json

def create
@book = Book.new(book_params)

respond_to do |format| if @book.save format.html { redirect_to @book, notice: 'Book was successfully created.' } format.json { render :show, status: :created, location: @book } else format.html { render :new } format.json { render json: @book.errors, status: :unprocessable_entity } end end

end

PATCH/PUT /books/1

PATCH/PUT /books/1.json

def update
respond_to do |format|
if @book.update(book_params)
format.html { redirect_to @book, notice: 'Book was successfully updated.' }
format.json { render :show, status: :ok, location: @book }
else
format.html { render :edit }
format.json { render json: @book.errors, status: :unprocessable_entity }
end
end
end

DELETE /books/1

DELETE /books/1.json

def destroy
@book.destroy
respond_to do |format|
format.html { redirect_to books_url, notice: 'Book was successfully destroyed.' }
format.json { head :no_content }
end
end

private
# Use callbacks to share common setup or constraints between actions.
def set_book
@book = Book.find(params[:id])
end

# Never trust parameters from the scary internet, only allow the white list through. def book_params params.require(:book).permit(:title, :author) end

end


また、app/views/books/index.html.erbは下記のようになっております。

class BooksController < ApplicationController
before_action :set_book, only: [:show, :edit, :update, :destroy]

def index
@books = Book.page(params[:page]).per(10)
end

GET /books

GET /books.json

def index
@books = Book.all
end

GET /books/1

GET /books/1.json

def show
end

GET /books/new

def new
@book = Book.new
end

GET /books/1/edit

def edit
end

POST /books

POST /books.json

def create
@book = Book.new(book_params)

respond_to do |format| if @book.save format.html { redirect_to @book, notice: 'Book was successfully created.' } format.json { render :show, status: :created, location: @book } else format.html { render :new } format.json { render json: @book.errors, status: :unprocessable_entity } end end

end

PATCH/PUT /books/1

PATCH/PUT /books/1.json

def update
respond_to do |format|
if @book.update(book_params)
format.html { redirect_to @book, notice: 'Book was successfully updated.' }
format.json { render :show, status: :ok, location: @book }
else
format.html { render :edit }
format.json { render json: @book.errors, status: :unprocessable_entity }
end
end
end

DELETE /books/1

DELETE /books/1.json

def destroy
@book.destroy
respond_to do |format|
format.html { redirect_to books_url, notice: 'Book was successfully destroyed.' }
format.json { head :no_content }
end
end

private
# Use callbacks to share common setup or constraints between actions.
def set_book
@book = Book.find(params[:id])
end

# Never trust parameters from the scary internet, only allow the white list through. def book_params params.require(:book).permit(:title, :author) end

end

自身でも調べては見たものの、エラーを解決することはできず、多くの場合、別のエラーに変わるだけでした。
そのため、皆様にどこが問題のかを指摘していただく、質問いたしました。
何か情報に不足があれば、お伝え下さい。よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

index アクションが 2 重に定義されています。

rb

1def index 2 @books = Book.all 3end

のほう(つまり,page を使っていないほう)を削除すればいいと思います。

投稿2017/11/28 10:30

scivola

総合スコア2108

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問