当使用 SoftDeletingTrait 保存我的对象时,我的数据库字段“deleted_at”总是设置为“0000-00-00 00:00:00”而不是 NULL 值。我正在使用最新的 Laravel 5.0 版本。
我的目标:
use Illuminate\Database\Eloquent\Model as Eloquent;
use Illuminate\Database\Eloquent\SoftDeletingTrait;
class Entity extends Eloquent{
use SoftDeletingTrait;
protected $fillable = array('title');
}
我的保存调用:
public function store(Request $request)
{
$entity = new Entity;
try{
$data = ['title' => 'Test'];
$entity->fill($data);
$entity->save();
} catch(\Exception $e) {
echo $e->getMessage();
}
}
数据库中的“deleted_at”字段允许 NULL 值,所以这不是问题所在。查询模型时,它不会检索记录,因为该字段不为空。我该如何更改?
最佳答案
默认值可能不正确。在您的 Schema
中设置用于软删除功能的适当列,如下所示:
$table->softDeletes();
关于php - 如何确保我的 deleted_at 字段在 Laravel 中保存时设置为 NULL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26528488/