Я пытаюсь создать центр уведомлений с нумерацией страниц (через Kaminari), например facebook.
Я хочу, чтобы этот центр отображал нумерацию страниц с любой страницы (этот центр содержится в заголовочном файле).
Теперь я написал код ниже, затем он отображается соответствующим образом, когда я обращаюсь к home.html, но его разбиение на страницы не работает на другой странице (например, views/test/test.html.erb). Вероятно, ajax не может прочитать файл js, поэтому, если я помещу файл test.js.erb в представления/тест, он будет работать.
С точки зрения эксплуатации и обслуживания это нежелательный путь.
Как я могу прочитать разбиение на страницы, используя только один файл js.erb? спасибо за вашу помощь
Исходный код ниже.
Модель
приложение/модели/item.rb
class Item < ActiveRecord::Base
paginates_per 50
end
Контроллер
приложение/контроллер/items_controller.rb
before_action :pagination
def pagination
@items = Item.page params[:page]
end
Просмотреть
приложение/представления/статические/home.html.erb
<%= render 'static/header' %> <!-- reading partial header-->
приложение/представления/статические/_header.html.erb
<div><%= render 'application/items', items:@items %></div>
приложение/представления/статические/home.js.erb
$('#items').append("<%= escape_javascript(render '_items', object: @items) %>");
$("#more_link").replaceWith("<%= escape_javascript(link_to_next_page(@items, 'more', remote: true, id: 'more_link')) %>");
приложение/представления/приложение/_items.html.erb
<div id="items">
<%= render 'items' %>
</div>
<%= link_to_next_page @items, 'more', remote: true, id: 'more_link' %>
приложение/представления/приложение/__items.html.erb
<% @items.each do |item| %>
<div><%= item.name %></div>
<% end %>