Laravel 5.2只是在尝试显示视图时出错

I created a view which allows the user to create a theme/post. The link to that view is in my navbar. But the problem is When I try to click the link (display the view) I get redirected to the home page without any errors whatsoever.

In the link of the navbar, i put <li><a href="{{ route('createtheme') }}"> which simply activates the route with the name "createtheme". This route is as followed: Route::get('/theme/create', 'ThemesController@create')->name('createtheme');. So this activated the create method in the ThemesController.php. Which is:

public function create()
{
    return view('themes.create');
}

So if I read this correctly, This is supposed to give me the right view, right? And it doesn't give me any errors so I don't know where to look.

This is the view I'm trying to display:

@extends('layouts.default')

@section('content')
<div class="container main-content">
    <div class="row first-row">
        <div class="col s12">
            <div class="card">
                <div class="card-content clearfix">
                    <span class="card-title">New theme</span>
                </div>
            </div>
            <div class="card">
                <div class="card-content">
                    <form method="POST" action="">
                        {{ csrf_field() }}
                        <input type="hidden" name="user_id" value="{{ Auth::user()->id }}">
                        <div class="row">
                            <div class="input-field col s6 has-error form-group">
                                <input id="title" class="form-control" type="text" name="title" placeholder="Title of topic">
                                <label for="title" class="active">Title of theme</label><span>Titel is mandatory!</span>
                            </div>
                            <div class="file-field input-field col s6 form-group">
                                <div class="btn cyan darken-1 disabled"><span>Attachment</span>
                                    <input id="attachement" type="file" name="attachment" class="disabled">
                                </div>
                                <div class="file-path-wrapper form-group">
                                    <input type="text" placeholder="geen" class="file-path validate form-control">
                                </div>
                            </div>
                        </div>
                        <div class="row">
                            <div class="col s12 form-group">
                                <textarea id="message-body" class="form-control" name="body"></textarea>
                            </div>
                        </div>
                        <div class="row">
                            <div class="col s6">
                                Hier komen opties om het onderwerp te sluiten of
                                aan te geven dat het opgelost is, alleen bij bewerken
                            </div>
                            <div class="col s6">
                                <a href="" class="btn right cyan darken-1" type="submit">Save</a>
                            </div>
                        </div>
                    </form>
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

@section('scripts')
<script type="text/javascript" src="{{ asset('js/ckeditor/ckeditor.js') }}">
</script>
<script type="text/javascript" src="{{ asset('js/editor.js') }}"></script>
<script type="text/javascript" src="{{ asset('js/blog.js') }}"></script>
<script type="text/javascript" src="{{ asset('js/materialize.js') }}">
</script>
@endsection

And here are the routes that are related to this problem.

Route::get('/theme/create', 'ThemesController@create')->name('createtheme');
Route::post('/theme/create', 'ThemesController@store');

And of course the Store method:

public function store(Request $request)
{
    Theme::create($request->input()); //Dit doet hetzelfde als bovenstaande

    return redirect('/');
}

The middleware

public function handle($request, Closure $next)
{

    if ($request->user()->role_id != 2 || 3)
    {
        return redirect('/');
    }

    return $next($request);
}

Problem at that point:

  if ($request->user()->role_id != 2 || 3)

And more specifically in comprasion:

 (Integer value) != 2 || 3

All ingeteger values will return true, even 0. E.g.:

 if (0 != 2 || 3) -> TRUE
 if (2 != 2 || 3) -> TRUE
 if (3 != 2 || 3) -> TRUE

and you get redirect. Change you code at that point for right comprasion ( you use operators not properly). The simplest way:

 $allowed_role_ids = [2,3]; // array(2,3);
 if (!in_array($request->user()->role_id,$allowed_role_ids)){
    // redirect
 } 

Do you have this code in you controller?

public function __construct()
{
    $this->middleware('auth');
}

If so, and you are not logged in. You will be redircted to the homepage.

Try

public function __construct()
{
    $this->middleware('auth')->except(['store', 'create']);
}