Vad är Kaminari?
Kaminari är en pagineringspärla för Ruby on Rails som ger ett enkelt och flexibelt sätt att paginera poster i din applikation. Med Kaminari kan du enkelt lägga till paginering till dina vyer och kontroller, och anpassa pagineringsalternativen för att passa dina specifika behov.
Installerar Kaminari
Att använda Kaminari i din Rails ansökan, måste du först installera ädelstenen. Du kan göra detta genom att lägga till följande rad i din Gemfile:
pärla 'kaminari'
När du har lagt till ädelstenen i din Gemfile, kör paketinstallation
för att installera ädelstenen och dess beroenden.
Använda Kaminari i dina kontroller
När du har installerat Kaminari kan du börja använda den i dina kontroller för att sidnumrera poster. Här är ett exempel på hur man paginerar en lista med användare i en UsersController:
klass UsersController < ApplicationController
def index
@användare = Användare.beställa(:namn).page(params[:sida]).per(10)
slutet
slutet
I det här exemplet använder vi sida
metod för att ange det aktuella sidnumret och per
metod för att ange antalet poster per sida. De beställa
metod används för att sortera användarna efter deras namn.
Använd Kaminari i dina åsikter
När du har paginerat dina poster i din kontrollenhet kan du använda Kaminaris vyhjälpmedel för att visa sideringslänkarna i dina vyer. Här är ett exempel på hur man visar sidnumreringslänkarna i en index.html.erb-vy:
<%= paginera @användare %>
I det här exemplet använder vi paginera
hjälpare för att generera sideringslänkarna för @användare
samling. Kaminari genererar automatiskt länkar för föregående, nästa och numrerade sidor baserat på den aktuella sidan och antalet sidor i samlingen.
Anpassa pagineringsalternativ
Kaminari tillhandahåller en mängd olika anpassningsalternativ som du kan använda för att konfigurera pagineringslänkarna och beteendet. Här är några exempel på vanliga anpassningsalternativ:
- Ändra standardantalet poster per sida
Som standard visar Kaminari 25 poster per sida. Du kan ändra detta genom att ställa in default_per_page
konfigurationsalternativ i en initialiseringsfil:
#config/initializers/kaminari.rb
Kaminari.configure do |config|
config.default_per_page = 10
slutet
I det här exemplet ställer vi in standardantalet poster per sida till 10.
- Ändra etiketterna för pagineringslänkarna
Du kan anpassa etiketterna för sidnumreringslänkarna genom att använda param_name
och params
alternativ i paginera
hjälpare:
<%= paginera @användare, param_namn: :Sidonummer, params: { foo: 'bar' } %>
I det här exemplet ställer vi in pagineringsparametern till Sidonummer
istället för standard sida
, och passerar en foo=bar
parametern till de genererade sideringslänkarna. Du kan också anpassa etiketterna för de individuella sideringslänkarna genom att använda tema
och skapa en anpassad vymall.
- Anpassa pagineringstemat
Kaminari tillhandahåller flera inbyggda teman för pagineringslänkarna, inklusive standard
, twitter-bootstrap
, och förverkligas
. Du kan anpassa temat genom att ställa in tema
konfigurationsalternativ i en initialiseringsfil:
#config/initializers/kaminari.rb
Kaminari.konfigurera do |config|
config.default_theme = :twitter-bootstrap
slutet
``