在 laravel 8 形式中使用 @csrf 后 403 Forbidden

403 Forbidden after using @csrf in laravel 8 form

我是编程新手,尤其是 laravel。我正在尝试制作一个 CRUD,并且已经在前传中添加了示例数据(使用 Docker)。我可以看到数据,但是当我尝试使用表单创建新帖子时,我收到代码 419 页面已过期。我知道这很正常,解决方案是将 @csrf 添加到表单中。但是在这样做之后我得到了 403 Forbidden。我尝试了很多,但找不到修复它的解决方案。 如果有人能帮我解决我的问题,我会很高兴。

这是我的create.blade.php


@section('content')
<div class="container">
    <div class="row justify-content-center">
        <div class="col-md-12">
            <div class="card">
                <div class="card-header">{{ __('Alle Gerichte') }}</div>

                <div class="card-body">
                <form action = "/recipe" method="POST">
                @csrf
                            <div class="form-group">
                                <label for="name">Name</label>
                                <input type="text" class="form-control" id="name" name="name">
                            </div>
                            <div class="form-group">
                                <label for="beschreibung">Beschreibung</label>
                                <textarea class="form-control" id="beschreibung" name="beschreibung" rows="5"></textarea>
                            </div>
                            <input class="btn btn-primary mt-4" type="submit" value="absenden">
                        </form>

                  <a class="btn btn-primary btn-sm mt-3 float-right" href="/recipe"><i class="fas fa-circle-up"></i>Zurück</a>
                </div>
            </div>
        </div>
    </div>
</div>
@endsection

控制器代码将是这样的:

public function store(StoreRecipeRequest $request)
{   
    //dd($request);
    $recipe = new Recipe( [ 
        'name' => $request->name,
        'beschreibung' => $request->beschreibung,
        ]);
        $recipe->save(); 
        return redirect('/recipe'); 
    } 

还有如果没有解决。那就试试吧

public function store(StoreRecipeRequest $request)
    {   
        $recipe = new Recipe();
        $recipe->name = $request->name;
        $recipe->beschreibung = $request->beschreibung;
        $recipe->save(); 
        return redirect('/recipe');
    } 

还有,你能加入你的Recipe模型吗?

protected $fillable = [
        'name',
        'beschreibung',
    ];

您好,您已经创建了验证规则

在 StoreRecipeRequest 中

这样做

public function authorize()
    {
        return true;
    }