initializersの下に以下の内容の適当なファイルを入れておきます。
# will_paginateで出力されるページネーションの日本語化
WillPaginate::ViewHelpers.pagination_options = {
:class => 'pagination',
:previous_label => '«前へ',
:next_label => '次へ»',
:inner_window => 4, # links around the current page
:outer_window => 1, # links around beginning and end
:separator => ' ', # single space is friendly to spiders and non-graphic browsers
:param_name => :page,
:params => nil,
:renderer => 'WillPaginate::ViewHelpers::LinkRenderer',
:page_links => true,
:container => true
}
# エントリー情報を日本語化
module WillPaginate::ViewHelpers::Base
def page_entries_info(collection, options = {})
entry_name = options[:entry_name] || (collection.empty?? 'entry' :
collection.first.class.name.underscore.gsub('_', ' '))
plural_name = if options[:plural_name]
options[:plural_name]
elsif entry_name == 'entry'
plural_name = 'entries'
elsif entry_name.respond_to? :pluralize
plural_name = entry_name.pluralize
else
entry_name + 's'
end
unless options[:html] == false
b = '<b>'
eb = '</b>'
sp = ' '
else
b = eb = ''
sp = ' '
end
if collection.total_pages < 2
case collection.size
when 0; "#{plural_name}は見つかりませんでした。"
when 1; "#{b}1#{eb} 件の#{entry_name}が見つかりました。"
else; "#{b}#{collection.size}#{eb} 件の#{plural_name}を表示しています。"
end
else
%{#{b}%d#{eb} 件中 #{b}%d#{sp}-#{sp}%d#{eb} 番目までの#{plural_name}を表示しています。} % [
collection.total_entries,
collection.offset + 1,
collection.offset + collection.length,
]
end
end
end
ビューにはこんな感じで書きます。
<%= page_entries_info @items, :entry_name => '1つだけ見つかったときのエントリ名', :plural_name => '複数見つかったときのエントリ名' %> <%= will_paginate @items %>
投稿者紹介
-
私たちは、テクノロジに魅せられた個性あふれるメンバーによって構成された茨城県日立市に本社を構えるベンチャー企業です。
”テクノロジを通して「驚き」と「感動」を創造し、人々の「夢」と「笑顔」を支えます。” の経営理念をモットーに明るい未来を描き、ワクワクする企画提案を続けて参ります。
最近のエントリ
- レポート2019.10.28ユニキャストレストランを開催しました🍳
- レポート2019.08.29社内研修ワークショップ~マシュマロ・チャレンジ~
- レポート2019.08.06Computex/InnoVEX 出展者・通訳として参加してきました。
- レポート2018.06.12Computex 2018 レポート