这应该是中间件吗?

Should this be middleware?

我的 DB 几乎每个 table 都有两个字段,它们是 created_bymodified_by。所以,现在我的 controller:

里有这个
$request['created_by'] = Auth::user->id;
$request['modified_by'] = Auth::user->id;

我在想我应该把它变成 middleware 或更多的东西 RESTful 但我不知道我会怎么做。现在,我 100% 的 store 方法都在使用它,但以后我可能会有一个没有这两个字段的 table,这是我感到困惑的地方。

中间件的工作是处理请求,但是你需要在这里控制模型的创建和更新。所以在我看来,我会在模型事件中添加这些部分,并从所有控制器中删除它们。 因此,一旦模型正在创建或更新,就会触发一个事件来更改这些 parameters/attributes,就在保存模型之前。

这可以根据 documentation 轻松实现:

在您的 AppServiceProvider 中:

<?php

namespace App\Providers;

use App\User;
use Illuminate\Support\ServiceProvider;

class AppServiceProvider extends ServiceProvider
{
    /**
     * Bootstrap any application services.
     *
     * @return void
     */
    public function boot()
    {
        User::creating(function ($user) {
            if ( ! $user->isValid()) {
                return false;
            }
        });
    }

您可以将 User 替换为您的型号名称,并确保将其导入。