按编辑点击保存 变成新增数据 出现bug 修改save方法,修改如下
Vue
//保存数据 到后台
const save = () => {
//提交数据
//向后台发送请求,是用request方法
//res是后台返回来的数据
request.request({
// 根据data.form.id的值动态设置请求URL与方法
// 如果data.form.id存在(即不为空、null或false),则:
// 设置请求URL为'/course/update',同时设置HTTP请求方法为PUT,用于更新课程信息
// 否则(即data.form.id不存在或为空):
// 设置请求URL为'/course/add',同时设置HTTP请求方法为POST,用于添加新的课程信息
url:data.form.id ? '/course/update' : '/course/add',
method:data.form.id ? 'PUT' : 'POST',
data: data.form
}).then(res => {
if (res.code === '200'){
load()//重新加载数据
data.formVisible = false //关闭弹窗
ElMessage.success("操作成功")
}else {
ElMessage.error(res.msg)
}
})
}
后台
controller
@PutMapping("/update")
public Result update(@RequestBody Course course){
courseService.updateById(course);
return Result.success();
}
service层
public void updateById(Course course) {
courseMapper.updateById(course);
}
mapper层sql语句
@Update("update course set name=#{name},no=#{no},descr=#{descr},times=#{times},teacher=#{teacher} where id=#{id}")
void updateById(Course course);