2017-05-17 4 views
0

J'ai une tâche - insérer une colonne personnalisée dans une de nos pages d'administration, où je peux appeler la méthode à partir du modèle pour chaque entrée, générée par le générateur CRUD sac à dos. J'ai trouvé dans la déclaration de documentation officielle qui ressemble à ce que je dois ici:sac à dos laravel crud colonne personnalisée

https://laravel-backpack.readme.io/v3.0/docs/crud-columns-types#section-roll-your-own

Mais il n'y a rien sur la façon de mettre en œuvre ce de la manière droite du contrôleur. J'ai donc essayé de faire comme ce

Controller:

$status = [ 
     'label' => 'Status', 
     'name' => 'status', 
     'type' => 'text' 
    ]; 
$this->crud->addColumn($status); 

et comme mentinoned dans la documentation, je créer mon propre fichier lame dans

resources\views\vendor\backpack\crud\columns 

Ici, il est:

{{-- status --}} 
<td>{{ $entry->isBlocked }}</td> 

Où isBlock est la méthode dans mon modèle. J'ai une erreur à propos de la base de données et rien ne fonctionne. Veuillez dire s'il est possible de faire ce que je veux et si c'est le cas - veuillez dire comment le faire correctement à la vue et au contrôleur

Merci!

Répondre

0

Vérifions votre code

$status = [ 
     'label' => 'Status', 
     'name' => 'isBlocked', // your column name 
     'type' => 'status' // your blade name, e.g status.blade.php 
     ]; 

$this->crud->addColumn($status); 

et à l'intérieur status.blade.php

{{-- status --}} 
<td>{{ $entry->{$column['name'] }}</td> 

Toute question, s'il vous plaît commentaires

+0

Hey! Merci votre réponse! Votre suggestion lloks logocal et la bonne façon, mais après l'avoir mis en œuvre, j'ai toujours une erreur "Avertissement DataTables: ID de table = crudTable - Erreur Ajax.Pour plus d'informations sur cette erreur, s'il vous plaît voir http://datatables.net/tn/7 " –