現在gem kaminariをインストールしてページにページネーションを表示したくて
rails g Controller usersを実行して
def index
@users = User.page(params{page:})
と指定しているのですが以下のようなエラーが出て困っています。
発生している問題・エラーメッセージ
エラーメッセージ ```NameError in UsersController#index uninitialized constant UsersController::User Extracted source (around line #3): class UsersController < ApplicationController def index @users = User.page(params[:page]) end end ### 該当のソースコード ```ここに言語名を入力 ソースコード ```rails g controller users ### 試したこと users_controller.rbの中の @users = User.page(params[:page]) を@users = User.allに変えてみたり app/views/users/index.html.erbの中を 以下に書き換えたりして実行しても同じエラーでした。 <div class="page-header"> <h1>単語一覧</h1> </div> <div class="list-group"> <% @users.each do |user| %> <%= link_to(word, class: 'list-group-users') do %> <h4 class="list-group-item-heading"> <%= word.word %> </h4> <p class="list-group-item-text"> <%= user.reading %> </p> <% end %> <% end %> <%= paginate @users %> </div> Nameerrorを翻訳すると定義されていない変数と書いてあったのですが変数に関わる何か必要な 処理があるのでしょうか? 初心者なものですいませんどなたか分かる方がいましたら回答よろしくお願いします。 ### 補足情報(FW/ツールのバージョンなど) ここにより詳細な情報を記載してください。
ちなみにUserモデルって存在ますか?
app/models/user.rbファイルがあって
```
class User < ApplicationRecord
end
```
みたいにかかれているようなファイルが必要だと思っています。
回答ありがとうございます!
今rails g model userを実行してmigrateをかけるとviewのページが表示されました。
しかしページネーションの1,2,nextとテンプレートが見当たらないのですがこちらの方は
modelのuser.rbに何か処理を施さなければいけないのでしょうか?
Userのデータ数がページを分けるほどの量がないだけだと思います。
たとえばUserが一人の場合に2ページ目などは必要ないので。
つまりusers.controller.rbのpagination自体はすでにviewsに反映されているってことでしょうか?
回答1件
あなたの回答
tips
プレビュー