![](/img/trans.png)
[英]SQLSTATE[23000]: Integrity constraint violation: 1048 Column 'message' cannot be null
[英]problem Integrity constraint violation: 1048 Column
SQLSTATE [23000]:违反完整性约束:1048列'patente'不能为空(SQL:插入cars
( patente
, marca
, modelo
, color
, fecha_ingreso
, updated_at
, created_at
))值(?,?,?,?,?, 2019-06-10 16:27:35,2019-06-10 16:27:35)
Route::match(['get', 'post'], '/crear',[
'uses'=>'CarController@crear',
'as'=>'cars.crear'
]);
短代码形成
<div class="row">
<div class="col-md-6"></div>
<form action="{{route('cars.crear')}}" method="post">
@csrf
<div class="row form-group">
<div class="col-md-12">
<label for="true">Patente:</label>
<input type="text" name="patente" size="6" maxlength="6" class="form-control" required>
</div>
</div>
代码创建和显示
公共功能crear(Request $ request){
$patente=$request['patente'];
$marca=$request['marca'];
$modelo=$request['modelo'];
$color=$request['color'];
$fecha_ingreso=$request['fecha_ingreso'];
$car=new Car();
$car->patente=$patente;
$car->marca=$marca;
$car->modelo=$modelo;
$car->color=$color;
$car->fecha_ingreso=$fecha_ingreso;
$car->save();
return redirect()->back();
}
public function show(){
$cars=Car::all();
return view ('lista',['cars'=>$cars]);
}
在存储数据之前先验证您的数据,
php artisan make:request ClearRequest
在App \\ Requests \\ ClearRequest中,
class ClearRequest 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 [
'patente'=>'required',
'marca'=>'required',
'modelo'=>'required',
'color'=>'required',
'fecha_ingreso'=>'required',
'patente'=>'required',
'marca'=>'required',
'modelo'=>'required',
'color'=>'required',
'fecha_ingreso'=>'required'
];
}
}
在您的控制器中
use App\Http\Requests\ClearRequest;
用你清楚的方法
public function crear(ClearRequest $request){
...
}
在您的视图文件中……
<form action="/clear" method="POST">
@csrf
patente<br>
<input type="text" name="patente">
<br>
marca<br>
<input type="text" name="marca">
<br>
modelo<br>
<input type="text" name="modelo">
<br>
fecha_ingreso<br>
<input type="text" name="fecha_ingreso">
<br>
patente<br>
<input type="text" name="patente">
<br>
modelo<br>
<input type="text" name="modelo">
<br>
color<br>
<input type="text" name="color">
<br>
fecha_ingreso<br>
<input type="text" name="fecha_ingreso">
<br>
<input type="submit" value="Submit">
</form>
如果这对您有帮助,您就支持我:)
public function crear(Request $request){
request()->validate([
'patente' => 'required',
'marca' => 'required',
'modelo' => 'required',
'color' => 'required',
'fecha_ingreso' => 'required',
'patente' => 'required',
'marca' => 'required',
'modelo' => 'required',
'color' => 'required',
'fecha_ingreso' => 'required'
]);
$car = Car::create([
patente => $request->patente,
marca => $request->marca,
modelo => $request->modelo,
color => $request->color,
fecha_ingreso => $request->fecha_ingreso
]);
return redirect()->back();
}
您的代码看起来不错,有点冗长,所以我整理了一下并添加了验证。 我能想到的唯一建议是确保您的Car
模型已将字段添加到protected $fillable
数组中。
您正在尝试将空值存储在NOT NULL
列中。 确保您在请求中正确传递了patente
。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.