Lorsque j'essayais d'exécuter une commande make: migration, elle renvoyait une erreur .. essayant d'obtenir la propriété de non-object (sans autre information). Il semblait que l'artisan ne réussissait pas du tout les commandesLaravel: les commandes php artisan ne fonctionnent pas, sauf si je commente un code
J'ai donc vérifié le laravel.log et cela m'a amené à mon constructeur html personnalisé, la ligne dans la construction.
class HtmlBuilder extends \Collective\Html\HtmlBuilder {
use CreatesAdminMenu, CreatesButtons;
/**
* Slugs accesible by the user
* @var array
*/
public $accessibleSlugs;
function __construct()
{
$this->accessibleSlugs = auth()->user()->accessibleSlugs;
}
Ce code a fonctionné très bien, aussi quand je dd-ed auth() -> utilisateur() -> accessibleSlugs, je me donné un tableau valide. Mais seulement quand je la mettre en commentaire, la commande artisan php fonctionne bien à nouveau ...
Le modèle Admin derrière elle contient cette méthode
public function getAccessibleSlugsAttribute()
{
return static::$roleSlugs[$this->role];
}
Espérons que quelqu'un ici peut me donner une certaine direction pour résoudre ce problème. Si quelqu'un est encore intested ... J'ai fait plus de creusement, en cours d'exécution ['prop'] au lieu de '-> prop' ne casse pas l'artisan ... par pourquoi: S !! Ainsi, dans ma construction de HtmlBuilder:
function __construct()
{
$this->accessibleSlugs = auth()->user()['accessibleSlugs']; //works!
//$this->accessibleSlugs = auth()->user()->accessibleSlugs; //Break Artisan!
}
Dans un routeMiddleware j'accéder aussi comme ceci: « -> accessibleSlugs », et ici, il ne pose aucun problème: S