【问题标题】:Pass Variable to Nested Resource in Blade将变量传递给刀片中的嵌套资源
【发布时间】:2018-09-16 18:10:07
【问题描述】:

我有以下嵌套资源定义:

routes/web.php

Route::resource('employees', 'EmployeeController');
Route::resource('employees.external_training_records', 'ExternalTrainingRecordController');

ExternalTrainingRecordController

public function create()
{
    return view('employees.external_training_records.create');
}

views/employees/show.blade.php

<a href="{{ route('employees.external_training_records.create', $employee) }}">Create External Training Record</a>

views/employees/external_training_records/create.blade.php

<div class="card-header">{{ $employee->name }}</div>

Laravel 不喜欢在 views/employees/external_training_records/create.blade.php 中调用 $employee 上的未定义变量

如何将$employee 传递到嵌套资源的创建页面?

【问题讨论】:

    标签: php laravel laravel-blade


    【解决方案1】:

    它可以解决您的问题。为 route 函数添加一个变量名。

    route('employees.external_training_records.create', ['employee' => $employee]);
    

    ExternalTrainingRecordController

    和这里一样

    public function create(Employee $employee) // add parameter with type hint
    {
        return view('employees.external_training_records.create', ['employee' => $employee]); // add parameter in array
    }
    

    【讨论】:

    • 谢谢!你为我指明了正确的方向。我需要将App\Employee $employee 作为参数添加到控制器上的创建函数中。我还需要查询数据库中的对象,并将其传递给视图。谢谢!
    猜你喜欢
    • 1970-01-01
    • 2017-09-30
    • 1970-01-01
    • 2022-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-15
    • 1970-01-01
    相关资源
    最近更新 更多