【问题标题】:What do callAction do in Laravel controller?callAction 在 Laravel 控制器中做了什么?
【发布时间】:2021-06-28 02:02:23
【问题描述】:

我正在维护一些我的大学编写的 Laravel 6 代码。

我发现他们覆盖了控制器中的 callAction 方法并在其中初始化了一些变量。但我在 Laravel 3-8 文档中找不到 callAction 方法。

在 callAction 方法中而不是在控制器的构造函数中初始化变量有什么意义?

use Illuminate\Routing\Controller;

class ControllerA extends Controller
{
    protected $data = [];

    public function callAction($method, $parameters)
    {
        $this->data['title'] = 'Some database query';
    }

    public function index(Request $request)
    {
        return view('index', $this->data);
    }
}

【问题讨论】:

    标签: php laravel laravel-routing laravel-controller


    【解决方案1】:

    callAction(string $method, array $parameters)

    在控制器上执行一个动作。

    来源: https://laravel.com/api/8.x/Illuminate/Routing/Controller.html#method_callAction

    【讨论】:

    • 我也发现了。但他们没有在文档中提到如何以及何时覆盖它。
    • 有些人可能会覆盖这个方法,让他们选择哪个方法处理哪个动作
    • 总的来说,使用它来为对象属性赋值是没有意义的,这将被认为是不好的做法,在这种情况下最好使用构造函数。
    • 谢谢。我现在明白了
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多