Недавно я установил жемчужину will_paginate в свой блог разработки, и у меня возникли проблемы. Я добавил его к моей Gemfile:will_paginate undefined method 'per'
gem 'will_paginate'
затем подают его в контроллер сообщений:
def index
@posts = Post.paginate(:per_page => 5, :page => params[:page], :order => 'created_at DESC')
respond_to do |format|
format.html # index.html.erb
format.json { render json: @posts }
format.atom
end
end
и, наконец, в поле зрения:
<div id="post" style="background-color: gray; border-radius: 20px; border-bottom: solid black 2px; padding-bottom: 40px; padding-top: 40px; margin: auto;">
<%= post.content.html_safe %>
</div>
<br />
<div style="padding-bottom: 40px; background-color: brown;">
<li>Posted: <%= post.created_at.to_formatted_s(:long) %></li>
<li>Author: <%= post.author_name %></li>
<li>Comments: <%= post.comments.count %></li>
</div>
<br />
<br />
<%= will_paginate @posts %>
Индекс страница работает нормально. В настоящее время он не разбит на страницы, потому что у меня недостаточно должностей, созданных в среде разработки (собирался создать их через панель администратора, столкнулся с этим). Он также отлично работает на панели администратора (с использованием active_admin). Это только тогда, когда я нажимаю «сообщения» (или любую другую ссылку) на панели администратора, чтобы сделать новый пост, который я получаю следующее сообщение об ошибке:
NoMethodError in Admin::PostsController#index
undefined method `per' for # <ActiveRecord::Relation::ActiveRecord_Relation_Post:0x5b37d30>
Я не совсем уверен, как действовать, и оценить любого Помогите. Извините за простой вопрос.
Вы говорите, что индексная страница работает нормально? Зачем вам нужно разбивать страницы на «новое» действие? –
Я этого не делаю, я просто хочу его по индексу. Моя проблема в том, когда я иду создавать новые сообщения, используя панель администратора, чтобы проверить разбиение на страницы, я получаю неопределенный метод. –
try 'Post.order (created_at DESC) .paginate: per_page => 5,: page => params [: page]' –