php - 重命名列 Laravel 5.8 后从表中删除数据
问题描述
最近我开始使用 Laravel 5.8,我正在尝试制作删除按钮,该按钮将从数据库中删除行。但是在创建按钮之前,我已经将表中的列 id 名称从 id 更改为 id_book,问题是 Laravel 仍然获取 id-data,而不是 id_book,并引发这样的错误
**Column not found: 1054 Unknown column 'books.id'**
这是按钮的代码:
<form action="/hapus/{{ $book->id_book }}" method="POST">
@method('DELETE')
@csrf
<input type="submit" value="Hapus">
</form>
这是控制器的方法:
public function hapus($id_book){
$book = Books::find($id_book);
$book->id;
if($book->gambar = 1){
Storage::delete($book->gambar);
$book->delete();
return redirect('/books');
}
else{
$book->delete();
return redirect('/books');
}
表格中的列是:id_book(以前是 id)、名称、图像、类别、描述
感谢帮助,这是我修复此问题后的模型:
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Books extends Model
{
protected $table = "books";
protected $primaryKey = "id_book";//solution
protected $fillable = [
'title',
'images',
'category',
'description'
];
}
解决方案
推荐阅读
- android-spinner - 如何在java中拆分字符串并在android中使用spinner
- python - 如何解析 HTML 页面中的链接?
- mysql - Dockerize adonis.js + mysql
- react-virtualized - 如何使用 DOM 回收库(例如“react-window”或“react-vizualaized”)呈现两个具有动态高度项的列表
- regex - minizinc pentominoes 常规约束示例如何工作?
- vba - 在 Word 文档的页脚中访问 ContentControl(组合框)
- javascript - 制作JS游戏,在代码中添加其他对象的地方
- c# - C# linq IQueryable 多重过滤
- ios - FCM 推送通知声音不起作用 IOS(可能重复但没有任何解决方案)
- swift - 更新文档 Firebase 时无限循环