关于,我正在更新一个名为 使用权 使用主键= idusuarios的相同视图,插入操作使我毫无疑问地出现了问题,当我想更新它时会产生错误
SQLSTATE [42S22]:找不到列:1054“ where子句”中的未知列“ usuarios.id”(SQL:从usuarios
中选择*,其中usuarios
。id
= 1限制1)
这是我的代码
型号
Usuario类扩展了模型 {
protected $table = 'usuarios';
protected $primarykey = 'idusuarios';
protected $filliable = [ 'cedula','nombre','tele1','tele2','correo','direccion',
'user_name','user_pass','fecha_ingreso','usu_idrol'];
public function Usuario(){
// return $this->belongsTo('app\Roles','idrole','usu_idrol');
return $this->hasOne('app\Roles','idrole','usu_idrol');
}
const CREATED_AT = NULL;
const UPDATED_AT = NULL;
另一个表的模型
class Roles extends Model
{
protected $table ='roles';
protected $primarykey = 'idrole';
protected $filliable = ['desc_rol'];
public function Roles(){
return $this->belongsTo('app\Usuario','usu_idrol','idrole');
}
控制器
public function update(Request $request)
{
//
$usuario = Usuario::findOrFail($request->idusuarios);
$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 = $request ->estado;
$usuario->usu_idrol = $request ->usu_idrol;
$usuario->save();
}
axios
actualizarUsuario(){
if (this.validarUsuario()) {
return;
}
let me = this;
axios.put('/usuario/actualizar',{
// parametros que voy a recibir
'idusuarios': this.idusuarios,
'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,
'idusuarios': this.idusuarios,
}).then(function (response) {
me.cerrarModal();
me.listarUsuario();
}).catch(function (error) {
console.log(error)
});
},
答案 0 :(得分:0)
根据错误消息msg,findOrFail
试图找到id = 1
,因此重写primary_key
无法正常工作。
源代码中的属性primary key
是$primaryKey
将$primarykey
更改为 CamelCase ,如下所示:
protected $primaryKey = 'idusuarios';