php - 如何确保我的 deleted_at 字段在 Laravel 中保存时设置为 NULL?

标签 php laravel laravel-5

当使用 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/

相关文章:

php - Javascript 和 PHP 数组值

Laravel:从邮件 Blade 模板设置邮件主题

javascript - 在 Laravel 中获取 500 内部服务器代码

php - Laravel - 使用一对多关系插入多个项目

php - 本地.错误: PDOException: SQLSTATE[HY000]: General error: 1615 Prepared statement needs to be re-prepared in happen in every morning

LaravelLocalization.php 中的 Laravel 5 UnsupportedLocaleException

php - Laravel 动态关系 - 在急切加载时访问模型属性

php内存缓存错误

javascript - 基于 PHP-Array 动态追加表单

php - Windows telnet 给出不同的结果