2019-08-26
2019-09-25
kaminariのページネーションをerbからSlimにするとエラーになる

仕事でKaminariを利用したページネーションのページをSlim化 したところ、Htmlがエンコードされず、そのまま表示され たので回避方法を記載します。
Slim化したらエンコードされない件
以下がerbのコード
<%= paginator.render do %> <nav> <ul class="pagination"> <%= first_page_tag unless current_page.first? %> <%= prev_page_tag unless current_page.first? %> <% each_page do |page| %> <% if page.left_outer? || page.right_outer? || page.inside_window? %> <%= page_tag page %> <% elsif !page.was_truncated? -%> <%= gap_tag %> <% end %> <% end %> <%= next_page_tag unless current_page.last? %> <%= last_page_tag unless current_page.last? %> </ul> </nav> <% end %>
以下にすると、エンコードされない
= paginator.render do nav ul.pagination = first_page_tag unless current_page.first? = prev_page_tag unless current_page.first? - each_page do |page| - if page.left_outer? || page.right_outer? || page.inside_window? = page_tag page - elsif !page.was_truncated? = gap_tag = next_page_tag unless current_page.last? = last_page_tag unless current_page.last?
Slim化するとエンコードされない現象の対策
以下の通り、=の部分を==で呼び出すとエンコードされます
= paginator.render do nav ul.pagination == first_page_tag unless current_page.first? == prev_page_tag unless current_page.first? - each_page do |page| - if page.left_outer? || page.right_outer? || page.inside_window? == page_tag page - elsif !page.was_truncated? == gap_tag == next_page_tag unless current_page.last? == last_page_tag unless current_page.last?
その他関連記事
unicornでエラー `block in builder': wrong number of arguments (
Rspecのエラー|ArgumentError is not a valid status
サーバーでNo space left on deviceが発生した場合の対処
can't find gem bundler (>= 0.a) with executable bundle (Gem:
あなたにお勧めの記事
前の記事
次の記事
2018/09/21