Запуск Laravel v5.8.35
На моей локальной машине все маршруты работают должным образом. При загрузке на мой рабочий сервер все маршруты работают, кроме одного.
Route::resources([
[...]
'pages' => 'PageAdminController',
'resorts' => 'ResortAdminController',
]);
Все мои основные маршруты администратора определены как маршруты ресурсов. Похоже, у меня проблемы с маршрутом Resort PUT, который обновляет модель. URL-адрес: /admin/resorts/{resort}
.
. Контроллер курорта использует запрос, который возвращает значение true в методе авторизации (как и во всех других моих маршрутах администратора). Аутентификация выполняется с помощью промежуточного программного обеспечения, добавленного в группу маршрутов:
->middleware(['auth', 'role:superadministrator|administrator'])
Опять-таки, это одинаково на всех моих маршрутах администратора, которые все работают должным образом.
Я заметил, что у некоторых других была похожая проблема, и все сводилось к тому, что в их общей папке был каталог, соответствующий сегментам URL. Это не тот случай.
Я попытался очистить кеш. В журналах ошибок нет ошибок, и я поигрался с установленным мной пакетом защищенных заголовков и пакетом CORS. Кажется, что они не имеют значения.
Вот мой код для функции обновления в моем ResortAdminController:
{
$resort->name = $request->name;
$resort->caption = $request->caption ? $request->caption : null;
$resort->subtext = $request->subtext;
$resort->content = $request->content;
$resort->weather_code = $request->weather_code;
if($request->hasFile('banner'))
{
$resort->addMediaFromRequest('banner')
->toMediaCollection('banner');
}
if($request->hasFile('topbanner'))
{
$resort->addMediaFromRequest('topbanner')
->toMediaCollection('top-banner');
}
if($request->hasFile('button'))
{
$resort->addMediaFromRequest('button')
->toMediaCollection('button');
}
$resort->save();
return redirect()->route('admin.resorts.index')->with('success', 'Resort successfully updated');
}
и мой метод правил в моем пользовательском запросе:
public function rules()
{
return [
'name' => 'required|min:3|max:190',
'caption' => 'nullable|min:3|max:190',
'subtext' => 'required|min:30',
'content' => 'required|min:30',
'weather_code' => 'required|min:3',
'banner' => 'nullable|mimes:jpeg,jpg,svg,png,bmp|max:2048',
'topbanner' => 'nullable|mimes:jpeg,jpg,svg,png,bmp|max:2048',
'button' => 'nullable|mimes:jpeg,jpg,svg,png,bmp|max:2048',
];
}
Любая помощь будет принята с благодарностью.