【问题标题】:How to edit soft deleted data without restore it in Laravel?如何在 Laravel 中编辑软删除的数据而不恢复它?
【发布时间】:2019-01-25 23:45:12
【问题描述】:

我使用SoftDeleteevents 表中删除了一个事件。 SoftDelete 工作正常。我已经在视图中显示了SoftDelete 事件withTrashed() 并且它正在显示。现在我想编辑 SoftDelete 事件数据而不恢复它。有可能吗?

我收到错误 400 - 我们无法找到该页面,但我已经尝试过了。

$data['events'] = $qBuilder->EventComplete()->withTrashed()
                    ->orderBy('events.event_date', 'desc')
                    ->groupBy('events.id')
                    ->paginate(AppHelper::getConfigValue('ADMIN-PAGINATION-LIMIT'));

【问题讨论】:

    标签: php laravel laravel-5 eloquent laravel-routing


    【解决方案1】:

    应该是这样的:

    Model::withTrashed()->find(5)->update(['attribute' => 'value']);
    

    所以你正在使用 eloquent apply withTrashed - 找到单个模型(这里 id = 5),然后你更新你想要的属性。

    您还没有展示更多,但是在您的情况下,假设您使用 Route model binding,您可能需要对其进行调整以允许也找到软删除的模型:

    Route::bind('user', function ($value) {
        return App\User::withTrashed()->findOrFail($value);
    });
    

    【讨论】:

      猜你喜欢
      • 2017-12-15
      • 2020-07-29
      • 2020-10-28
      • 2021-11-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-02-05
      相关资源
      最近更新 更多