Css personnalisé avec kaminari avec bootstrap

J'essaie d'utiliser paginate avec kaminari. Mon projet a utilisé bootsrap css, et le résultat est si laid:) entrez la description de l'image ici

Le code html est généré par nokogiri

<nav class="pagination">
    <span class="first">
  <a href="/admin/book_borrow/borrow?locale=en">« First</a>
</span>

    <span class="prev">
  <a rel="prev" href="/admin/book_borrow/borrow?locale=en">‹ Prev</a>
</span>

        <span class="page">
  <a rel="prev" href="/admin/book_borrow/borrow?locale=en">1</a>
</span>

        <span class="page current">
  2
</span>

        <span class="page">
  <a rel="next" href="/admin/book_borrow/borrow?locale=en&amp;page=3">3</a>
</span>

        <span class="page">
  <a href="/admin/book_borrow/borrow?locale=en&amp;page=4">4</a>
</span>

    <span class="next">
  <a rel="next" href="/admin/book_borrow/borrow?locale=en&amp;page=3">Next ›</a>
</span>

    <span class="last">
  <a href="/admin/book_borrow/borrow?locale=en&amp;page=4">Last »</a>
</span>

  </nav>

Je veux quelque chose comme la pagination dans la page bootstrap, comment je peux faire? S'il vous plaît aider!

21
demandé sur the Tin Man 2012-11-10 13:28:20

4 réponses

Après avoir posté cette question, j'ai trouvé la solution: kaminari: un paginateur à base de Scope & Engine, propre, puissant, personnalisable et sophistiqué pour Rails 3 .

Il suffit d'aller à la console et tapez:

rails generate kaminari:views bootstrap

Il va télécharger des fichiers Haml à votre application, et les vues sont modifiées.

Voici quelques thèmes pour les vues Kaminari: https://github.com/amatsuda/kaminari_themes

62
répondu duykhoa 2013-11-30 13:13:04

Ajoutez simplement le css suivant à votre application.css

.pagination a, .pagination span.current, .pagination span.gap {
    float: left;
    padding: 0 14px;
    line-height: 38px;
    text-decoration: none;
    background-color: white;
    border: 1px solid #DDD;
    border-left-width: 0;
}

.pagination {
    border-left: 1px solid #ddd;
    .first{
        padding : 0;
        float: none;
        border: none;
    }
    .prev {
        padding : 0;
        float: none;
        border: none;
    }
    .page{
        padding : 0;
        float: none;
        border: none;
    }
    .next{
        padding : 0;
        float: none;
        border: none;
    }
    .last{
        padding : 0;
        float: none;
        border: none;
    }
}
12
répondu Rohit Siddha 2014-05-05 06:15:22

Presque abandonné jusqu'à ce que je trouve " Pagination avec Kaminari ".

En bref, après {[0] } allez dans les vues créées sous app / views / kaminari et modifiez les balises en fonction de votre style.

Je suis entré dans _paginator.html.erb et j'ai changé le <nav> en <div> et remplacé toutes les balises <span> par <li>.

Pour obtenir le bootstrap style qui convient à mon application, j'ai changé le <div> balise _paginator.html.erb à <div class="pagination pull-right"> et le <span class="page"> balises simples <li>.

Il y en a un couple de gotcha que peut-être quelqu'un d'autre peut aider avec:

  1. Il y a erb dans _page.html.erb qui change la classe de la page en cours lorsqu'elle est active. Il gâche l'alignement afin de contourner cela, changez le <%= link_to_unless page.current? ... %> en <%= link_to page ... %>.

  2. La vue _gap.html.erb qui insère le "..."bloquer aussi se foiré. Remplacez-le par <li><%= link_to '...' %></li> pour le faire asseoir bien en ligne.

Je viens de commencer à coder il y a 8 semaines, donc il y a de meilleures façons d'aborder cela et les moyens de nettoyer 1 et 2, mais si vous voulez juste que les choses semblent bien et fonctionnent comme prévu, donner un coup de feu et affiner plus tard.

4
répondu Ameet Wadhwani 2013-11-30 13:09:44
rails generate kaminari:views bootstrap4

Thèmes Disponibles: bootstrap2, bootstrap3, bootstrap4, de bourbon, de bulma, fondation, foundation5, github, google, matérialiser, purecss, semantic_ui

1
répondu Jeremy Lynch 2018-08-18 02:22:18