如何定义未定义变量:令牌(视图:C:\ xampp \ htdocs \ blog \ resources \ views \ auth \ passwords \ email.blade.php)

时间:2019-04-02 05:52:40

标签: laravel laravel-blade laravel-authentication

enter image description here

  

未定义变量:令牌(查看:   C:\ xampp \ htdocs \ blog \ resources \ views \ auth \ passwords \ email.blade.php)

4 个答案:

答案 0 :(得分:0)

在不需要添加$token的表单中,您已经在表单中使用它了。因此,您的表单操作应为

action="{{ route('password.request') }}" 

对于csrf,您还可以使用以下命令在表单中进行输入

{{ csrf_field() }}

答案 1 :(得分:0)

如果您在laravel中使用了默认身份验证(使用php artisan make:auth),请在 \auth\passwords\email.blade.php 文件中进行如下更改:

<form method="POST" action="{{ route('password.email') }}">
@csrf

答案 2 :(得分:0)

您只是不需要在表单中手动添加$token,只需在表单内使用csrf_field(),它就会使用csrf令牌生成隐藏字段

您的代码应该是这样

<form method="POST" action="{{ route('password.request') }}">
    {{ csrf_field() }}
    .
    .
    .
</form>

答案 3 :(得分:0)

您好,我在#laravel6项目中遇到了相同的问题,我试图调用相同的方法并从不同的URL进行查看。 我只是像这样删除@csrf之后的第二行

<input type="hidden" name="token" value="{{ $token }}">

我删除了它,并且效果很好。 关于令牌,@ csrf提供了一个令牌,因此一切正常进行。