Я столкнулся со странной ошибкой на моем компьютере, локально все работает правильно, а когда я бросаю проект на сервере вживую, у меня эта проблема BadMethodCallException, в которой говорится, что не удается найти метод, но метод на самом деле существует, я пробовал все php artisan key: сгенерировать , composer dump-autoload, php artisan cache: config, но безуспешно.
мой маршрут:
Route::get('/forgotpassword',[
'as' => "forgotpassword",
'uses' => "admin@forgotpassword"
]);
контроллер:
//Forgot Password
public function forgotpassword()
{
return view('page.forgotpassword');
}
И я получаю ошибку:
BadMethodCallException
Method App\Http\Controllers\admin::forgotpassword does not exist.
Пожалуйста, введите код вашего контроллера
Контроллер администратора: <? php namespace App \ Http \ Controllers; используйте Carbon \ Carbon; используйте Illuminate \ Http \ Request; используйте Illuminate \ Support \ Facades \ Auth; использовать Валидатор; используйте Illuminate \ Support \ Facades \ DB; класс admin расширяет контроллер {// Общедоступная функция администратора входа в систему login () {return view ('page.login'); } // Забыли пароль public function Forgotpassword () {return view ('page.forgotpassword'); } работает только домашний маршрут: login ()






Попробуй это:
Route::get('/forgotpassword',[
'as' => "forgotpassword",
'uses' => "Admin@forgotpassword"
]);
Remember: All class name is case-sensitive. XAMPP corrected this automatically.
когда я делаю 'uses' => "Admin @ Forgotpassword" "Class App \ Http \ Controllers \ Admin не существует"
Затем добавьте полный код вашего контроллера в описание вопроса. @spyrox
обычно это происходит, когда вы разрабатываете в Windows, но размещаете его в Linux.
В Linux мы также должны позаботиться о чувствительности к регистру.
убедитесь, что имя вашего класса совпадает с именем, на которое вы ссылаетесь в своих маршрутах.
например
Route::get('/forgotpassword',[
'as' => "forgotpassword",
'uses' => "admin@forgotpassword"
]);
для указанного выше маршрута у вас должно быть имя контроллера в нижнем регистре.
например
class admin extends Controller {}
Надеюсь это поможет
У меня это похоже на то, что администратор класса расширяет контроллер, но я не могу понять, как не могу найти метод, пока метод публикации работает, если я пытаюсь войти в систему, он входит в контроллер и дает мне ответ, поэтому запрос публикации работает.
namespace App\Http\Controllers;
use App\Http\Controllers;
class Admin extends Controller {
}
Маршрут
Route::get('/forgotpassword',[
'as' => "forgotpassword",
'uses' => "Admin@forgotpassword"
]);
пожалуйста, опубликуйте свое пространство имен