首页  >  问答  >  正文

尝试在 Laravel 9 中读取 null 属性“id”

您好,我遇到一个问题,我的代码是:

if($user->plan->id == 1) {
    return view($this->activeTemplate . 'user.autopool', compact('pageTitle', 'commissions', 'deposit', 'transactions', 'commission', 'withdraw', 'transaction', 'username', 'balance', 'user', 'plans'));
} else {
    return view($this->activeTemplate . 'user.nopool', compact('pageTitle', 'user'));
}

我想从我的代码中消除这个错误。我被困在这里了。

P粉530519234P粉530519234274 天前373

全部回复(1)我来回复

  • P粉151466081

    P粉1514660812023-12-25 00:10:31

    $user->plan 计算结果为 null。你不防备这一点。


    • 如果您使用的是 PHP8,则可以使用 nullsafe 运算符。
    雷雷
    • 如果你使用 PHP7,你可以使用 laravel 的 optional() 函数。
    雷雷
    • 如果 UserPlan 之间的关系是属于关系 (User ownsTo Plan),则最好在用户模型中使用外键。
    雷雷

    回复
    0
  • 取消回复