php - 未定义的变量问题 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>
ServiceDetails控制器代码
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 view('service_details.create', ['users' => User::all(), 'services' => Service::all(), 'clientTransactions' => ClientTransaction::all()]);
推荐阅读
- antlr - ANTLR4 中部分跳过字符
- react-native - 找不到 support-v4.aar (com.android.support:support-v4:25.2.0)
- javascript - 将组件整体的onClick和组件内的按钮分开
- mysql - 如何更改 MYSQL 数据库列归档排序规则
- mysql - MySQL 空行仅在表为空时显示
- vba - 根据保存位置/文件名更改工作簿的保护
- javascript - 如何在 .org 版本的网站上静态化 HTML 中的“.com”内容
- c# - 无法传递对象的引用
- cassandra - 将代码从 thrift 移动到 CQL 时不需要的 KEY 列
- javascript - 我想在同一张卡片中显示数据作为两列任何建议