在 Laravel 中访问侧边栏的控制器方法

Accessing Controllers methods for sidebar in Laravel

我正在用 Laravel 5.6 制作一个项目,目前我正在制作一个带有链接的侧边栏,以访问指定控制器的功能。 f.e。如果我在帖子 blade 中,它会显示侧边栏的 PostsController 方法。

问题是每个控制器都有不同数量的方法,我不想把 10 种不同的侧边栏静态布局搞得一团糟。

有没有一种方法可以通过 returns 控制器的所有方法到视图的功能来访问控制器方法?

或者我认为这是错误的..如果有人知道更好的解决方案,我会洗耳恭听。 :)

我知道我可以安装功能包,但我想知道在此之前是否有任何简单的解决方案。

编辑 1:

get_class_methods($this) returns 以下值:

Returned Methods of a Controller

我可以添加一个验证器来检查“index”或“create”是否存在。估计我的问题解决了,谢谢大家的回答

编辑 2:

转储返回方法的代码。

public function index()
{

    $events = Event::all();

    dd($controller = get_class_methods($this));

    return view('events.index', compact(['events', 'controller']));

}

您可以使用'get_cass_methods'函数获取控制器上的所有方法class

function index() {
  $methods = get_class_methods($this);
  return view('posts', compact('methods'));
}

如果你想过滤掉父类的方法class

function index() {
  $methods = array_diff(get_class_methods($this),get_class_methods(get_parent_class()));
  return view('posts', compact('methods'));
}