Laravel を勉強していて下記のサイトを参考にチュートリアルをやっています。

https://www.hypertextcandy.com/laravel-tutorial-error-handling/

解決したいこと

このページの すべてのルートにポリシーを適用する という箇所で

Web.phpのルーティングを /folders/{id}/tasks としていたところを

/folders/{folder}/tasks や /folders/{folder}/tasks/{task}/edit という

複数形/単数形のルーティングに変更しようとしたのですが

ログインした後のリダイレクト先が homestead.test/folders//tasks?id=4 となってしまい

folders の後が id ではなく //tasks になってしまうので

ログインしたユーザーのidがURLに入らず

お探しのページは見つかりませんでした。

と表示されます。

{folder}{task} に変えた箇所を DBに入っているidの数字を入力すると
問題なく表示することが出来ています。

また、ログインしている場合はログアウトが表示され
ログインしていない場合はログイン、登録という項目が表示されるようにしていたのですが

ルーティングを変えてから、ログインしていてもログイン、登録という項目が表示されてしまいます。

数日考えたのですが、どうしても原因が分からなかったので教えていただきたいです。

他に必要な情報がありましたら追記しますので、よろしくお願いします。

web.php


Route::group(['middleware' => 'auth'], function () {
    Route::get('/', 'HomeController@index')->name('home');

    Route::get('/folders/create', 'FolderController@showCreateForm')->name('folders.create');
    Route::post('/folders/create', 'FolderController@create');

    Route::group(['middleware' => 'can:view,folder'], function () {
        Route::get('/folders/{folder}/tasks', 'TaskController@index')->name('tasks.index');

        Route::get('/folders/{folder}/tasks/create', 'TaskController@showCreateForm')->name('tasks.create');
        Route::post('/folders/{folder}/tasks/create', 'TaskController@create');

        Route::get('/folders/{folder}/tasks/{task}/edit', 'TaskController@showEditForm')->name('tasks.edit');
        Route::post('/folders/{folder}/tasks/{task}/edit', 'TaskController@edit');
    });
});

Auth::routes();

TaskController

<?php

namespace App\Http\Controllers;

use App\Folder;
use App\Task;
use App\Http\Requests\CreateTask;
use App\Http\Requests\EditTask;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Auth;

class TaskController extends Controller
{
    /**
     * タスク一覧
     * @param Folder $folder
     * @return \Illuminate\View\View
     */
    public function index(Folder $folder)
    {

        $folders = Auth::user()->folders()->get();
        $tasks = $folder->tasks()->get();

        return view('tasks/index', [
            'folders' => $folders,
            'current_folder_id' => $folder->id,
            'tasks' => $tasks,
        ]);
    }
    /**
     * タスク作成フォーム
     * @param Folder $folder
     * @return \Illuminate\View\View
     */
    public function showCreateForm(Folder $folder)
    {
        return view('tasks/create', [
            'folder_id' => $folder->id,
        ]);
    }
    /**
     * タスク作成
     * @param Folder $folder
     * @param CreateTask $request
     * @return \Illuminate\Http\RedirectResponse
     */
    public function create(Folder $folder, CreateTask $request)
    {
        $task = new Task();
        $task->title = $request->title;
        $task->due_date = $request->due_date;
        $folder->tasks()->save($task);
        return redirect()->route('tasks.index', [
            'id' => $folder->id,
        ]);
    }
    /**
     * タスク編集フォーム
     * @param Folder $folder
     * @param Task $task
     * @return \Illuminate\View\View
     */
    public function showEditForm(Folder $folder, Task $task)
    {
        $this->checkRelation($folder, $task);

        return view('tasks/edit', [
            'task' => $task,
        ]);
    }
    /**
     * タスク編集
     * @param Folder $folder
     * @param Task $task
     * @param EditTask $request
     * @return \Illuminate\Http\RedirectResponse
     */
    public function edit(Folder $folder, Task $task, EditTask $request)
    {
        $this->checkRelation($folder, $task);
        $task->title = $request->title;
        $task->state = $request->state;
        $task->due_date = $request->due_date;
        $task->save();
        return redirect()->route('tasks.index', [
            'id' => $task->folder_id,
        ]);
    }
    /**
     * フォルダとタスクの関連性があるか調べる
     * @param Folder $folder
     * @param Task $task
     */
    private function checkRelation(Folder $folder, Task $task)
    {
        if ($folder->id !== $task->folder_id) {
            abort(404);
        }
    }
}

FolderController

<?php

namespace App\Http\Controllers;

use App\Folder;
use Illuminate\Support\Facades\Auth;
use App\Http\Requests\CreateFolder;
use Illuminate\Http\Request;

class FolderController extends Controller
{
    public function showCreateForm()
    {
        return view('folders/create');
    }

    public function create(CreateFolder $request)
    {
        $folder = new Folder();
        $folder->title = $request->title;

        Auth::user()->folders()->save($folder);

        return redirect()->route('tasks.index', [
            'id' => $folder->id,
        ]);
    }
}

環境
- mac os 10.14.6
- Homestead 9.0.2
- vagrant 2.2.4
- virtualbox 6.0.4
- laravel 5.8