laravel - 无法在 Laravel 中打开使用表单请求验证的表单
问题描述
我无法打开由同一表单请求类验证的 2 个表单(创建、编辑)。
当我单击创建或编辑按钮时,我只是重定向到同一页面,并在开发工具中显示 302 Found 状态代码,而没有打开表单。
当我从控制器中的方法中删除表单请求验证时,我可以正常打开表单。
控制器:
...
use App\Http\Requests\AreaRequest;
...
public function edit(Area $area,AreaRequest $request) //it works if I remove AreaRequest $request
{
return view('backend.areas.edit', compact('area'));
}
public function create(AreaRequest $request)
{
return view('backend.areas.create');
}
要求:
namespace App\Http\Requests;
use Illuminate\Foundation\Http\FormRequest;
class AreaRequest extends FormRequest
{
/**
* Determine if the user is authorized to make this request.
*
* @return bool
*/
public function authorize()
{
return true;
}
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'name' => 'required|string'
];
}
}
开发工具图片:
解决方案
您以错误的方法使用表单请求
编辑和创建用于显示表单视图
验证应该去存储或更新
public function store(AreaRequest $request)
{
}
public function update(AreaRequest $request, Area $area)
{
}
推荐阅读
- flutter - 如何使用 MongoDB 数据库实现 Google Sign in Flutter 应用
- xcode - 编译C编译器识别源文件“CMakeCCompilerId.c”失败。编译器:/Applications/Xcode.app/......./usr/bin/cc
- django - Djongo 和 Django
- html - 关于简单 Bootstrap 3.4.1 表中缺失列的任何想法?
- javascript - FetchError:无法验证第一个证书,但我添加了rejectUnauthorized:false
- string - Powershell,使用(空格分隔)字符串作为程序的参数
- azure-devops - 如何将多个摘要上传到 Azure DevOps Server 2020 中的发布阶段?
- reactjs - 无法使用 npm install 和依赖项安装 React
- node.js - 尝试在“handleTeamsMessagingExtensionQuery”中获取用户详细信息时,“机器人不是对话名单的一部分”
- r - 参与者的 cumsum 并在 0 R 上重置