【问题标题】:Laravel Route Redirection ProblemsLaravel 路由重定向问题
【发布时间】:2017-06-13 13:40:36
【问题描述】:

我在将管理页面重定向到 Route::resource() 时遇到问题;这样我就可以从 BookController 显示我的 CRUD

我做错了什么?

这是我的 AdminLoginController:

public function __construct(){
    $this->middleware('guest:admin');
}

public function showLoginForm(){
    return view('auth.admin-login');
}

public function login(Request $request){
    $this->validate($request, [
        'email' => 'required|email',
        'password' => 'required|min:6'
    ]);

    if(Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password],$request->remember)){
        return redirect()->intended(route('books.index'));
    }
    return redirect()->back()->withInput($request->only('email','remember'));
}

图书控制器

public function index()
{
     $books = Book::orderBy('id','desc')->paginate(3);
     return view('books.index')->withBooks($books);
}

web.php

Route::prefix('admin')->group(function(){
    Route::get('/login','Auth\AdminLoginController@showLoginForm')>name('admin.login');
    Route::post('/login','Auth\AdminLoginController@login')>name('admin.login.submit');
    Route::get('/books/','BookController@index');
});

【问题讨论】:

    标签: php laravel controller routes laravel-5.4


    【解决方案1】:

    我认为你应该更新你的books 路线:

    Route::get('/books/','BookController@index')->name('books.index');
    

    Route::group(['prefix' => 'admin'], function () {
       Route::resource('/books','BookController@index');
    });
    

    并在php artisan route:list 中检查您的route 名称

    更新您的代码,如:

    if(Auth::guard('admin')->attempt(['email' => $request->email, 'password' => $request->password],$request->remember)){
    
        return redirect()->intended(route('admin.books.index'));
    
       } 
    

    希望这对你有用!

    【讨论】:

    • 谢谢@ADddWeb Solution Pvt Ltd 但我遇到了管理员/书籍/创建问题。它不显示,我有一个错误。我想使用 Route::Resource Route::Resource('/books/','BookController') 还是最好的解决方案是将它们 1 by 1 声明?比如 Route::get('/books/','BookController@index')->name('books.index'); Route::get('/books/','BookController@index')->name('books.index'.create); Route::get('/books/','BookController@index')->name('books.index'.edit);
    • @Jacky 如果我的回答是你的解决方案,请接受我的回答
    猜你喜欢
    • 2017-04-17
    • 1970-01-01
    • 1970-01-01
    • 2020-06-15
    • 2020-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-09
    相关资源
    最近更新 更多