如何在 Laravel 5 中全局防止保存到数据库

Ale*_*len 2 eloquent laravel-5

我在 Laravel 中制作了一个 PHP 脚本,现在我想向我的买家展示演示。由于我不希望他们对数据库进行任何更改,我想知道是否有办法全局禁用对数据库的任何保存?

use*_*178 5

如果你有一个BaseModel扩展 Laravel 的默认 Eloquent 模型类。并且您的所有应用程序模型BaseModel都可以扩展,您可以向其中添加以下内容:

public static function boot()
{
    parent::boot();

    static::saving(function($model)
    {
        return false;
    });
}
Run Code Online (Sandbox Code Playgroud)

这将拦截来自 Eloquent 的任何creating或updating事件。

这可能是您问题的技术答案,但理想情况下只需备份您的数据库并在向您的买家展示后恢复它。