laravel 在 UrlGenerator.php 中路由未定义的 ErrorException

laravel route undefined ErrorException in UrlGenerator.php

我找不到 Laravel 路由错误的解决方案。每当我访问 link 时,它都会显示错误 404 - 找不到页面。任何机构都可以帮助解决这个错误。以下是我的代码-

在web.php

Route::get('/post-ads-new/{cat}/{sub_cat}','PostController@postAdsNew');

在PostController.php

public function postAdsNew($cat,$sub_cat)
  {         

        return view('post-ads-new');
  }

并将HTML中的url用作

<a href="<?php echo $url.'/post-ads-new/?cat='.$category->id;?>&amp;<?php echo 'sub_cat='.$sub_category->subid;?>">

变量在 url 中是不必要的,您需要像下面这样构造您的 url:

<a href="<?php echo $url.'/post-ads-new/'.$category->id.'/'.$sub_category->subid;?>"></a>

您应该通过向路线添加名称来使用 Laravel URL 生成器

Route::get('/post-ads-new/{cat}/{sub_cat}','PostController@postAdsNew')->name('ads');

在您看来:

Blade版本:

<a href="{{ route('ads', ['cat' => $category->id, 'sub_cat' => $sub_category->subid]) }}"></a>

本机 PHP 版本:

<a href="<?= route('ads', ['cat' => $category->id, 'sub_cat' => $sub_category->subid]) ?>"></a>

这是文档https://laravel.com/docs/7.x/urls