您好,我在laravel中开发了一个学生CRUD,但是在将数据保存到数据库中时遇到了问题。
这是Laravel返回的问题。 SQLSTATE [HY000]:常规错误:1364字段“名称”没有默认值
我的商店功能。
public function store(Request $request)
{
$alumno = Alumno::create();
$alumno->fill($request->all());
$alumno->save();
return redirect('/alumnos');
}
我的模特:
class Alumno extends Model
{
protected $fillable = ['name','apellido','matricula','correo'];
}
我的表单:
<form action="/alumnos" method="post">
@csrf
<fieldset class="form-fieldset">
<div class="form-group">
<label class="form-label">Nombre<span class="form-required">*</span></label>
<input type="text" class="form-control" name="name" required/>
</div>
<div class="form-group">
<label class="form-label">Apellido<span class="form-required">*</span></label>
<input type="text" class="form-control" name="apellido" required/>
</div>
<div class="form-group">
<label class="form-label">Matricula<span class="form-required">*</span></label>
<input type="number" class="form-control" required name="matricula" />
</div>
<div class="form-group mb-0">
<label class="form-label">Correo Electronico<span class="form-required">*</span></label>
<input type="email" class="form-control" name="correo" required />
</div>
</fieldset>
<input type="submit" class="btn btn-primary" value="Guardar" />
</form>
我做错了什么?请帮忙,谢谢!!! :)
答案 0 :(得分:0)
您可以在表单操作中尝试此操作。
<form action="{{action('YourController@store')}}" method="post">
答案 1 :(得分:0)
您可以通过两种不同的方式解决此问题
let $filters=...
。描述字段是您的数据库字段。像下面这样
打开模型Null
,然后像这样使用代码
database/migrations/your_model
答案 2 :(得分:0)
问题是从表单操作URL尝试将操作更改为{{ action('YourController@store') }}
答案 3 :(得分:0)
您应按以下方式保存数据:
public function store(Request $request)
{
$alumno = new Alumno();
$alumno = $alumno->create($request->all());
return redirect('/alumnos');
}
它将正常工作。
答案 4 :(得分:0)
您应该在迁移中添加行
$table->string('name')->nullable();
如上设置表格
<form action="{{action('YourController@store')}}">
用于插入所有请求输入
Alumno::create($request->all());