簡體   English   中英

對於 laravel 的視圖錯誤,arguments 太少

[英]Too few arguments for view error with laravel

我在使用 laravel 時遇到問題。我正在嘗試在我的視圖中發送變量 $codes:

$codes = Code::where('user', $id)->get();
return view('user.edit', ['user' => $user,'codes' => $codes]);

但是我得到了那個錯誤Too few arguments to function e(), 0 passed in The variable $user goes well but not the variable code,有人知道解決方案嗎? 謝謝你們

用這個:-

return view('user.edit')->with('codes',$codes);

您可以通過以下方式獲取用戶:-

Auth::user()->name;

我很確定,如果您遵循 Laravel 命名約定,在您的 eloquent 查詢中,列名是 user_id 而不是 user。 此外,如果您正在使用此類查詢,並且您有外部查詢,則可以在模型中定義關系,如下所示:

代碼 Model

public function user
{
$this->belongsTo(User::class);
}

用戶 Model

public function codes
{
$this->hasMany(Code::class);
}

而不是線

$codes = Code::where('user', $id)->get();

您可以使用 go :

$codes = $user->codes();

如果您的數據庫中沒有外國人

$codes = Code::where('user_id', $id)->get();

如果這些都沒有幫助,請在返回視圖之前 dd() 您的變量,並在評論中與我分享結果。 在 laravel 7 中,您返回視圖的方式很好。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM