Маршрут Laravel не определен, но маршрут существует и работает в тинкере - PullRequest
0 голосов
/ 02 октября 2018

Я получаю сообщение об ошибке «Маршрут не определен»:

Маршрут [my_category.my_item] не определен.(View: /home....blade.php) ...

Для следующего кода (c / p от Sentry с небольшим количеством форматирования)

<?php $__env->startComponent('mail::button', [
  'url' => route('my_category.my_item', [
    'days' => 7,
    'email' => isset($email) ? $email : 'e@example.com',
    'confirm_code' => isset($token) ? $token : 'confirm-code'
  ])
]); ?>

Thisгенерируется из представления почтового компонента.Если я использую SSH на своем сервере, скопируйте функцию сверху:

route('my_category.my_item', [
    'days' => 7,
    'email' => isset($email) ? $email : 'e@example.com',
    'confirm_code' => isset($token) ? $token : 'confirm-code'
  ])

и запустите ее в тинкере, я получу свой маршрут, никаких проблем.Также, если я запускаю php artisan route:list | grep my_category.my_item, я вижу там свой маршрут.

Локальный сервер: никаких проблем.Промежуточный сервер: никаких проблем.

Локальный и промежуточный серверы используют MailHog и Log, соответственно, для почтового драйвера, в то время как производство использует MailGun, но я не вижу, как это может повлиять на что-либо.

Маршруты не кэшируются ни на одном из серверов.

Чего мне не хватать?Спасибо!

ОБНОВЛЕНИЕ:

Строка в web.php

Route::get('/my-category/my-item/{days}/{email}/{token}', 'MyCategoryController@notifyMe')->name('my_category.my_item');

Теперь я вижу, что у меня token в маршруте вместо confirm_code.Позвольте мне попытаться исправить это и посмотреть, что произойдет.Хотя он работает на двух других серверах: / - Только что попробовал, все то же поведение.

1 Ответ

0 голосов
/ 02 октября 2018

Я использую LaravelLocalization , и мои маршруты администратора (которые не используют эту локализацию - не переводятся) были сгруппированы в промежуточное программное обеспечение LL.

Перемещение моих административных маршрутов за пределы группы промежуточного программного обеспечения LL решило проблему.

Для меня до сих пор остается загадкой, почему это работает на двух других моих серверах, поскольку код одинаков (дважды проверил его)).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...