php artisan route :: list给我一个错误:试图获取非对象的属性

朱利钦

当我打字

php artisan route:list

我懂了

 Trying to get property of non-object

当我打字

php artisan route:list -v

我懂了

Exception trace:
 () at /home/vagrant/Code/app/CategorySettings.php:31
 Illuminate\Foundation\Bootstrap\HandleExceptions->handleError() at /home/vagrant/Code/app/CategorySettings.php:31
 App\CategorySettings->getDefaultSettings() at /home/vagrant/Code/app/Http/Controllers/CategoryController.php:27
 App\Http\Controllers\CategoryController->__construct() at n/a:n/a
 ReflectionClass->newInstanceArgs() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Container/Container.php:776
 Illuminate\Container\Container->build() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Container/Container.php:627
 Illuminate\Container\Container->make() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Foundation/Application.php:674
 Illuminate\Foundation\Application->make() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php:170
 Illuminate\Foundation\Console\RouteListCommand->getControllerMiddleware() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php:151
 Illuminate\Foundation\Console\RouteListCommand->getMiddleware() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php:119
 Illuminate\Foundation\Console\RouteListCommand->getRouteInformation() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php:89
 Illuminate\Foundation\Console\RouteListCommand->getRoutes() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Foundation/Console/RouteListCommand.php:76
 Illuminate\Foundation\Console\RouteListCommand->fire() at n/a:n/a
 call_user_func_array() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Container/Container.php:503
 Illuminate\Container\Container->call() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Console/Command.php:150
 Illuminate\Console\Command->execute() at /home/vagrant/Code/vendor/symfony/console/Command/Command.php:256
 Symfony\Component\Console\Command\Command->run() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Console/Command.php:136
 Illuminate\Console\Command->run() at /home/vagrant/Code/vendor/symfony/console/Application.php:838
 Symfony\Component\Console\Application->doRunCommand() at /home/vagrant/Code/vendor/symfony/console/Application.php:189
 Symfony\Component\Console\Application->doRun() at /home/vagrant/Code/vendor/symfony/console/Application.php:120
 Symfony\Component\Console\Application->run() at /home/vagrant/Code/vendor/laravel/framework/src/Illuminate/Foundation/Console/Kernel.php:107
 Illuminate\Foundation\Console\Kernel->handle() at /home/vagrant/Code/artisan:35

这是相关的代码

public function getDefaultSettings()
{
    $user = Auth::user();
    $categorySetting = $user->settings;   // <- line 31
...
}

错误消息似乎告诉我有关$ user的错误消息是当我dd $ categorySetting或$ user时,它为我提供了正确的对象...

    User {#418 ▼
  #table: "users"
  #fillable: array:16 [▶]
  #hidden: array:2 [▶]
  #connection: null
  #primaryKey: "id"
  #perPage: 15
  +incrementing: true
  +timestamps: true
  #attributes: array:20 [▶]
  #original: array:20 [▶]
  #relations: array:1 [▶]
  #visible: []
  #appends: []
  #guarded: array:1 [▶]
  #dates: []
  #dateFormat: null
  #casts: []
  #touches: []
  #observables: []
  #with: []
  #morphClass: null
  +exists: true
  +wasRecentlyCreated: false
}

你知道怎么了吗???

丹尼尔·卡斯特罗

Auth :: user()仅在有用户登录时才返回User模型,因此当您在浏览器中dd时,将返回您的用户。

但是,当您从cli调用route:list时,$ user为null,因此“试图获取非对象的属性”。

您需要弄清楚为什么route:list会调用getDefaultSettings()。我的猜测是您正在在route.php文件中执行某些操作,以调用该函数。

解决该问题的一种快速方法是,使用check方法检查用户模型之前是否有用户登录:

public function getDefaultSettings()
{
    if (Auth::check()) {
        $user = Auth::user();
        $categorySetting = $user->settings;
    ...
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

php artisan route:list RuntimeException会话存储未按要求设置

来自分类Dev

试图在php artisan migrate命令上获取非对象的属性

来自分类Dev

我在Laravel中的php artisan route:list命令中得到错误?

来自分类Dev

Laravel路由列表(php artisan route:list)在新行中显示中间件

来自分类Dev

Laravel 5.4 php artisan route:list 在路由后显示不正确的数据:clear

来自分类Dev

PHP Artisan上的ReflectionException错误

来自分类Dev

Laravel:PHP Artisan Tinker'SQLSTATE [23000]'错误

来自分类Dev

我的php artisan迁移发生了什么

来自分类Dev

运行 php artisan route 时出现问题:安装了 jwt 的列表

来自分类Dev

在 php artisan serve 后获取端口 8000 上的 PHP 容器

来自分类Dev

“试图获取非对象的属性”错误PHP

来自分类Dev

PHP错误“试图获取非对象的属性”

来自分类Dev

Laravel Artisan迁移错误:“ zsh:非法硬件指令php artisan迁移”

来自分类Dev

不能 php artisan 迁移

来自分类Dev

php artisan serve-如何获取mysql以运行

来自分类Dev

php artisan在Laravel 4中迁移错误PDOException

来自分类Dev

php artisan路线总是出现错误“调用成员函数render()”

来自分类Dev

'php artisan migration'保持暂停状态,不会导致错误

来自分类Dev

php artisan:Laravel 5.3中的回滚错误

来自分类Dev

php Laravel 5.3中的artisan迁移错误

来自分类Dev

PHP Catchable 致命错误:Laravel artisan 命令不起作用

来自分类Dev

laravel php artisan migrate 发生错误 db not creted?

来自分类Dev

如何修复 Laravel 中的“php artisan migrate”错误

来自分类Dev

Laravel 5.1.11用PHP Artisan迁移对我不起作用

来自分类Dev

如何从我的虚拟机中运行php artisan迁移

来自分类Dev

我在Windows的哪里运行“ php artisan make:migration posts”?

来自分类Dev

我可以运行例如 artisan 命令而不必键入 php

来自分类Dev

我无法在 linux 上执行 php artisan serve

来自分类Dev

Laravel PHP Artisan服务运行一次后关闭

Related 相关文章

  1. 1

    php artisan route:list RuntimeException会话存储未按要求设置

  2. 2

    试图在php artisan migrate命令上获取非对象的属性

  3. 3

    我在Laravel中的php artisan route:list命令中得到错误?

  4. 4

    Laravel路由列表(php artisan route:list)在新行中显示中间件

  5. 5

    Laravel 5.4 php artisan route:list 在路由后显示不正确的数据:clear

  6. 6

    PHP Artisan上的ReflectionException错误

  7. 7

    Laravel:PHP Artisan Tinker'SQLSTATE [23000]'错误

  8. 8

    我的php artisan迁移发生了什么

  9. 9

    运行 php artisan route 时出现问题:安装了 jwt 的列表

  10. 10

    在 php artisan serve 后获取端口 8000 上的 PHP 容器

  11. 11

    “试图获取非对象的属性”错误PHP

  12. 12

    PHP错误“试图获取非对象的属性”

  13. 13

    Laravel Artisan迁移错误:“ zsh:非法硬件指令php artisan迁移”

  14. 14

    不能 php artisan 迁移

  15. 15

    php artisan serve-如何获取mysql以运行

  16. 16

    php artisan在Laravel 4中迁移错误PDOException

  17. 17

    php artisan路线总是出现错误“调用成员函数render()”

  18. 18

    'php artisan migration'保持暂停状态,不会导致错误

  19. 19

    php artisan:Laravel 5.3中的回滚错误

  20. 20

    php Laravel 5.3中的artisan迁移错误

  21. 21

    PHP Catchable 致命错误:Laravel artisan 命令不起作用

  22. 22

    laravel php artisan migrate 发生错误 db not creted?

  23. 23

    如何修复 Laravel 中的“php artisan migrate”错误

  24. 24

    Laravel 5.1.11用PHP Artisan迁移对我不起作用

  25. 25

    如何从我的虚拟机中运行php artisan迁移

  26. 26

    我在Windows的哪里运行“ php artisan make:migration posts”?

  27. 27

    我可以运行例如 artisan 命令而不必键入 php

  28. 28

    我无法在 linux 上执行 php artisan serve

  29. 29

    Laravel PHP Artisan服务运行一次后关闭

热门标签

归档