簡體   English   中英

未定義的變量問題Laravel 5.4

[英]Undefined variable issue Laravel 5.4

我一直陷在這個錯誤中,所以請原諒我,因為我在Laravel還很新。 我得到這個錯誤

未定義的變量:clientTransactions(視圖:C:\\ xampp \\ htdocs \\ dcgwapo \\ resources \\ views \\ service_details \\ create.blade.php)

但是我有一個正確的代碼,但是我仍然想知道為什么它仍然是未定義的變量,因為我在控制器中定義了它。

服務詳細信息代碼中的create.blade.php

<div class="form-group">
    <label for="client_transaction_id">Client Trans ID: </label>
    <select class="form-control" name="client_transaction_id">
        @foreach ($clientTransactions as $clientTransaction)
            <option value= "{{ $clientTransaction->id }}">
              {{ $clientTransaction->id }}
            </option>
        @endforeach
    </select>
  </div>

ServiceDetailsController代碼

public function create()
{
    $users = User::pluck('fname', 'lname', 'id');
    $services = Service::pluck('name', 'id');
    $clientTransactions = ClientTransaction::all();
    return view('service_details.create', ['users' => User::all()], ['services' => Service::all()], ['clientTransactions' => ClientTransaction::all()]);
}

ServiceDetail.php模型代碼

public function clientTransaction()
{
  return $this->belongsTo(ClientTransaction::class);
}

我希望你能幫助我。 謝謝!

您以錯誤的方式將變量發送到視圖。 seconds參數應該是包含所有變量的數組。 到目前為止,您已經為每個變量的view函數添加了一個新參數。

view('view', [...], [...], [...])

應該是這樣的:

view('view', [...1, ...2, ...3])

因此,您需要更改的是return語句:

return view('service_details.create', ['users' => User::all(), 'services' => Service::all(), 'clientTransactions' => ClientTransaction::all()]);
You can use compact to pass data from controller to view:



        public function create()
        {
            $users = User::pluck('fname', 'lname', 'id');
            $services = Service::pluck('name', 'id');
            $clientTransactions = ClientTransaction::all();
            return view('service_details.create',compact('users','services','clientTransactions');
        } 

view函數的第二個參數接受關聯的數據數組,您正在傳遞數組的indexedArray,只需使用此return語句,您就可以進行了。 ;)

    return view('service_details.create', [
        'users' => User::all(),
        'services' => Service::all(),
        'clientTransactions' => ClientTransaction::all()
    ]); 

暫無
暫無

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

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