当我尝试向数据库中添加新记录时,返回的错误:"SQLSTATE23000:完整性约束违反: 1048列'usu_idrol‘不能为空(SQL:插入usuarios (cedula、nombre、tele1、tele2、correo、direccion、user_name、user_pass、fecha_ingreso、estado、d11)值(4477789965、alejo、6326595415、7894560、prueba@prueba.com、calle 1234、Prueba、789456、2020-01、1、1、?)“,
我已经有了不使用迁移的数据库
这是代码:
控制器
public function store(Request $request)
{
//
$usuario = new Usuarios();
$usuario->cedula = $request ->cedula;
$usuario->nombre = $request ->nombre;
$usuario->tele1 = $request ->tele1;
$usuario->tele2 = $request ->tele2;
$usuario->correo = $request ->correo;
$usuario->direccion = $request ->direccion;
$usuario->user_name = $request ->user_name;
$usuario->user_pass = $request ->user_pass;
$usuario->fecha_ingreso = $request ->fecha_ingreso;
$usuario->estado = '1';
$usuario->usu_idrol = $request ->usu_idrol;
$usuario->save();
}模型
类Usu里奥斯扩展模型{受保护的$primaryKey = 'idusuarios';
protected $fillable = ['cedula','nombre','tele1,tele2','correo','direccion','user_name','user_pass','fecha_ingreso','estado','usu_idrol'];
public function roles(){
// un usuario pertenece a un rol
return $this->belongsTo('App\Roles');
}
public function setUpdatedAt($value)
{
return NULL;
}
public function setCreatedAt($value)
{
return NULL;
}}
Vue
registrarOperador()
{
let me = this ;
axios.post('/usuario/registrar',{
'cedula':this.cedula,
'nombre':this.nombre,
'tele1':this.tele1,
'tele2':this.tele2,
'correo':this.correo,
'direccion':this.direccion,
'user_name':this.user_name,
'user_pass':this.user_pass,
'fecha_ingreso':this.fecha_ingreso,
'estado':this.estado,
'usu_idrol':this.usu_idrol
}).then(function (response) {
me.cerraModal();
me.listarOperador();
}).catch(function (error) {
console.log(error.message);
});
},发布于 2020-01-13 23:13:19
您的错误非常清楚地说明了错误是什么:
列“usu_idrol”不能为空
$request->usu_idrol从您的控制器返回NULL。
您可以通过放置一个dd($request->usu_idrol)来检查/验证该值,或者使用您的浏览器开发工具来查看您的Vue组件在请求有效负载中作为usu_idrol发送了什么。
https://stackoverflow.com/questions/59725221
复制相似问题