Маршрут [clients.projects] не определен - PullRequest
0 голосов
/ 26 мая 2020

Я начал новый проект, используя Laravel, и получаю это сообщение об ошибке

Route::get('projects/{id}', ['uses' => 'ManageClientsController@showProjects'])->name('clients.projects');

Когда я делаю

<a href="{{ route('clients.projects') }}">{{ $client->name }}</a></td>

Какова роль. между клиентами и проектами и как мне называть этот маршрут

Это мой файл маршрута:

Route::group(
        ['prefix' => 'clients'], function() {
        Route::post('save-consent-purpose-data/{client}', ['uses' => 'ManageClientsController@saveConsentLeadData'])->name('clients.save-consent-purpose-data');
        Route::get('consent-purpose-data/{client}', ['uses' => 'ManageClientsController@consentPurposeData'])->name('clients.consent-purpose-data');
        Route::get('gdpr/{id}', ['uses' => 'ManageClientsController@gdpr'])->name('clients.gdpr');
        Route::get('projects/{id?}', ['uses' => 'ManageClientsController@showProjects'])->name('clients.projects');
        Route::get('invoices/{id}', ['uses' => 'ManageClientsController@showInvoices'])->name('clients.invoices');

        Route::get('contacts/data/{id}', ['uses' => 'ClientContactController@data'])->name('contacts.data');
        Route::resource('contacts', 'ClientContactController');
    });

Ответы [ 3 ]

0 голосов
/ 26 мая 2020
<a href="{{ route('clients.projects',['id'=>$client->id]) }}">{{ $client->name }}</a>
0 голосов
/ 26 мая 2020

Я нашел ответ, мне нужно было это сделать, так как у меня есть родительское пространство имен

{{ route('admin.clients.projects', ['id' => $client->id]) }}

Спасибо, ребята

0 голосов
/ 26 мая 2020

Отредактировал ответ для тех, кто может столкнуться с этой проблемой в будущем.

  1. Убедитесь, что uri уникален
  2. Нет родительского пространства имен, обертывающего ваш маршрут, если это так пожалуйста, добавьте родительское пространство имен с .
  3. Параметр необходим, когда вы определяете свой uri маршрута, который включает /{param} not /{param?}
  4. Вы всегда можете проверить свой маршрут, используя следующая команда php artisan route:list

Надеюсь, это может решить проблему, если кто-то только что столкнулся с ней.


Вам необходимо передать параметр id в свой маршрут, или вы можете попробовать

заменить

Route::get('projects/{id}', ['uses' => 'ManageClientsController@showProjects'])->name('clients.projects');

на

Route::get('projects/{id?}', 'ManageClientsController@showProjects')->name('clients.projects');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...