首页 > 解决方案 > 为什么 Laravel 中的验证不能正常工作?

问题描述

我正在使用 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

标签: phpvalidationlaravel-5version

解决方案


这是您的表单代码中的一个简单错误,将“title”更改为“title”

所以新的标题输入字段,

{{Form::text('title','',['class'=>'form-control','placeholder'=>'Your Question Title'])}}

推荐阅读