尽管在视图中传递了参数,但缺少路由的必需参数

时间:2019-12-24 18:07:45

标签: php laravel laravel-blade laravel-6

我遇到这样的错误:

  

缺少[路由:resumenes.show] [URI:   resumenes / {resumen}]。 (视图:   ... / resources / views / resumenes / index.blade.php)

控制器

public function index()
{
    $resumenes = Resumene::orderBy('title','ASC')->paginate();
    return view('resumenes.index', compact('resumenes') );
}

public function show(Resumene $resumen)
{

    return view('resumenes.show', [
        'resumen'=> $resumen
    ]);
}

路线

 Route::get('/resumenes/{resumen}', 'ResumeneController@show')->name('resumenes.show');

INDEX.BLADE.PHP 在此视图中向我显示错误

 @extends('layout')
 @section('title')
 Mis Resumenes
 @endsection

@section('content')
<h1>Mis Resumenes</h1>

@include('partials.sessions')

<a href="{{ route('resumenes.create') }}">Nuevo Resumen</a>
<ul>
    @forelse($resumenes as $resumen)
    <h2>{{ $resumen->title }}</h2>
            **<li><a href="{{ route('resumenes.show', $resumen) }}" ><button>Ir</button></a>** 
            <br> Creado hace {{ $resumen->created_at->diffForHumans() }} </li>
            <hr>
    @empty
            <li>No hay proyectos existentes</li>
    @endforelse
{{ $resumenes->links() }}
</ul>
 @endsection

应该是

中的错误
   <li><a href="{{ route('resumenes.show', $resumen) }}" ><button>Ir</button></a>

1 个答案:

答案 0 :(得分:0)

看看您提供的所有代码似乎都很好。

您应该尝试:

php artisan view:clear

确保未使用旧视图。

如果没有帮助,则应运行:

php artisan route:list

确保此路由的网址看起来确实像/resumenes/{resumen},因为路由定义可能更复杂(使用路由分组),因此完整的网址可能看起来像这样:/something/{something}/resumenes/{resumen}