2013-08-02 5 views
4

Comment faire un numéro de ligne d'incrément avec pagination laravel? Quand j'utilise la pagination et que je vais à la page 2 et au-dessus, ça va revenir au début. Par exemple, je paginera (3)incrément numéro de ligne avec pagination laravel

<thead> 
    <tr> 
     <th>No</th> 
     <th>Name</th> 
    </tr> 
    </thead> 
    <tbody> 
    <?php $i = 1; ?> 
    @foreach ($telephone->results as $telp) 
    <tr> 
     <td> 
     {{$i++}} 
     </td> 
     <td>{{ $telp->name }}</td>        
    </tr> 
    @endforeach 
    </tbody> 

quand je vais à la page 2 le nombre commencera de 1 à nouveau.

-je besoin de le faire quand je vais à la page 2, il commencera à partir de 4

Répondre

5

Vous devriez être en mesure d'utiliser la méthode getFrom pour obtenir le numéro à partir des pages en cours des résultats. Donc, au lieu de définir $i = 1;, vous devriez être capable de le faire.

<?php $i = $telephone->getFrom(); ?> 

Dans Laravel 3 il n'y a pas de méthode getFrom donc vous devez calculer manuellement.

<?php $i = ($telephone->page - 1) * $telephone->per_page + 1; ?> 
+0

Nous vous remercions de votre aimable attention. En passant quand j'utilise la méthode getForm j'obtiens l'erreur Appel à la méthode undefined Laravel \ Paginator :: getFrom() – user2194246

+0

J'utilise laravel 3 – user2194246

+0

Ah désolé, supposé L4. J'ai mis à jour ma réponse pour inclure une variation L3. –

0

Ou éviter balises php complètement par

@foreach ($users as $key => $user) 
    {{ (Input::get('page', 1) - 1) * $users->getPerPage() + $key + 1 }} 
@endforeach 
3

Laravel 5,3

@foreach ($products as $key=>$val) 
    {{ ($products->currentpage()-1) * $products->perpage() + $key + 1 }} 
@endforeach 
4

En Laravel 5.3 vous pouvez utiliser firstItem():

@foreach ($items as $key => $value)  
    {{ $items->firstItem() + $key }} 
@endforeach 
1

Vous pouvez simplement ajouter ce qui suit ligne

$i = ($telephone->currentpage()-1)* $telephone->perpage(); 

à la place de

$i = 1; 
2

Les travaux ci-dessous avec Laravel 5,4

<?php $i = ($telephone->currentpage()-1)* $telephone- 
>perpage() + 1;?> 
@foreach($telephone as $whatever) 
<td> {{ $i++ }}</td> 
@endforeach