为啥 Laravel 中的验证不能正常工作?
Posted
技术标签:
【中文标题】为啥 Laravel 中的验证不能正常工作?【英文标题】:Why the validation in Laravel not working properly?为什么 Laravel 中的验证不能正常工作? 【发布时间】:2021-11-01 17:56:09 【问题描述】:我正在使用 laravel 版本 5,并且我有一个表单可以从用户那里获取问题的标题和正文。但是当我按下提交按钮时,显示的错误消息显示“标题字段是必需的”。但实际上,我已经在字段中输入了标题。 这是控制器页面中的代码,我在其中验证猫科动物并将它们添加到我的 SQL 数据库中。
public function store(Request $request)
$request->validate([
'title'=>'required|max:50',
'field'=>'required',
'body'=>'required|max:50'
]);
$title=$request->title;
$field=$request->field;
$body=$request->body;
$projects =new Project;
$projects->title=$title;
$projects->body=$body;
$projects->file=$field;
$projects->user_id=auth()->user_id;
$projects->save();
return view('/welcome')->with('success','Question Added');
我的表单代码是:
@extends('layouts.app')
@section('content')
<div class="continer-fluid">
!! Form::open(['action'=>'App\Http\Controllers\QuestionController@store','method'=>'POST']) !!
csrf_field()
<div class="form-group">
Form::label('titel','Titel')
Form::text('titel','',['class'=>'form-control','placeholder'=>'Your Question Title'])
</div>
<div class="form-group">
Form::label('field','Select your quetion filed')
Form::select('field',['code'=>'Arduino Coding','hardware'=>'Hardwaer','IoT'=>'Internet of things']
,'',['class'=>'form-control','placeholder' => 'select a Field...'])
</div>
<div class="form-group">
Form::label('body','Body')
Form::textarea('body','',['name'=>'editor1','class'=>'form-control','placeholder'=>'Body text'])
</div>
Form::submit('Submit',['class'=>'btn btn-primary'])
!! Form::close() !!
</div>
@endsection
【问题讨论】:
你的表单是什么样子的,你能把那个代码贴出来吗? 你能把你的表单代码贴出来吗!? 你的输入元素被命名为titel
,而不是title
@brombeer 谢谢,但是 body 字段也有同样的问题
看起来像 'name'=>'editor1'
在您的 body 元素中覆盖了名称。查看源代码/检查元素以查看它具有哪个 name
属性
【参考方案1】:
您的表单代码中的一个简单错误将“title”更改为“title”
所以新的标题输入字段,
Form::text('title','',['class'=>'form-control','placeholder'=>'Your Question Title'])
【讨论】:
以上是关于为啥 Laravel 中的验证不能正常工作?的主要内容,如果未能解决你的问题,请参考以下文章
laravel 中的护照详细信息 api 在本地主机上可以正常工作,但不能在共享主机上运行