【问题标题】:Laravel : force refresh extended viewLaravel:强制刷新扩展视图
【发布时间】:2023-12-09 09:31:02
【问题描述】:

我认为,当我扩展刀片模板时,视图存在缓存问题。 结果应该是:

Before : 578
Parent : 578
Section : 578

我有:

Before : 578
Parent : 576
Section : 578

父模板从某处获得另一个 id ?缓存?

这是我的代码:

//BlocController
public function edit(Bloc $bloc)
{
$content = view('blocs.'.$bloc->bloc_type.'.edit')
->with('bloc', $bloc);

return $content;
}

//调用的模板

Before : {{$bloc->id}}
@extends('blocs.edit')
@section('form_fields')
    Section : {{$bloc->id}}
@endsection

//模板块.edit

Parent : {{$bloc->id}}
@yield('form_fields')

有什么想法吗?

谢谢?

【问题讨论】:

    标签: laravel laravel-blade


    【解决方案1】:

    我找到了办法。我使用了视图编写器并使用我在 url 中传递的参数来获取我的 $bloc,然后再将其发送到父视图

    //app/Providers/AppServiceProvider.php

    public function boot()
    {
        View::composer('blocs.edit', function ($view) {
        $bloc = Request::route()->parameter('bloc');
        $view->with(['bloc' => $bloc]);
    });
    }
    

    【讨论】: