@shille

Не работает ссылка и страница из-за локализации Laravel?

Реализовал локализацию сайта, создал группу для путей, дал префикс, создал middleware, вообщем, всё работало до того как я дошёл до страницы где я вывожу карточки всех тестов из БД, я вывожу на каждой карточке ссылку с путём {language}/test/{test}, на всех ссылках у меня были статическое значение, скорее всего из-за этого на других страницах нет ошибок. У меня есть путь:
Route::group(['prefix' => '{language}', 'where' => ['language' => 'ru|en']], function () {

//other route

    Route::middleware(['auth:sanctum', 'verified'])
        ->resource('/test', TestController::class)
        ->name('*', 'test')

});


И вот код TestController::show()

public function show(Test $test, TestRepository $testRepository)
    {
        $i = 0;
        $name = 0;

        $testQues = $testRepository->getTestId($test);
        $testCollect = $testRepository->getTest($test);

        return view('test.show', compact('testQues', 'testCollect', 'i', 'name'));
    }

И вот где появляется проблема view (Страница вывода карточек):
<a href="{{ route('test.show', $testsCard->id, app()->getLocale()) }}"><x-jet-button>Начать</x-jet-button></a>

В других ссылках я пеередаю значение вот так, и все хорошо:
<a href="{{ route('test.index', app()->getLocale()) }}"></a>


Козда захожу на страницу с воводом получаю вот такую ошибку:


Illuminate\Routing\Exceptions\UrlGenerationException
Missing required parameter for [Route: test.show] [URI: {language}/test/{test}] [Missing parameter: test]. (View: C:\xampp\htdocs\jetstream\resources\views\livewire\test\card.blade.php)


Даже не знаю что делать, как не пытался поменять местами, или убирать app()->getLocale(), ставить вместо $testsCard->id - просто цифру, одна и таже ошибка, пишу на сайте первый раз, помогите пожалуйста!
  • Вопрос задан
  • 65 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы