全局包含 User Eloquent 模型

Globally include User Eloquent model

我有一个 Laravel 5 网站。我想对我的 Laravel 站点、视图和控制器(例如 Auth 模型)的每个页面使用 User::find 函数。在 Laravel 5 中,我必须将 ("use") 这个模型包含在每个页面中,但我希望所有页面都包含它。 我能怎么做? 用户模型是一个例子,但如果有多个 Eloquent 模型的全局变量会很酷。提前致谢!

将您的 Eloquent 模型添加到 config/app.php 中的 aliases 列表中。例如,'User' => 'App\User' 将使您的用户模型在任何地方都可用 \User

我认为你没有理解那里的真正问题。

根据我自己的 L4 知识,这些模型默认具有全局范围。

那么,是关于PHP命名空间的。这根本与范围无关。

查看:

namespace AnotherModel;

use User;

没关系。但是,如果你不想要它,那么你需要像下面那样做:

class Foobar {

public function test () {

$users = \User::all ();

} }

然后,您可以使用 \ 调用模型对象而无需声明其适当的命名空间。这就像一些全局范围。

请记住,出于自动加载的原因,每个模型对象都有自己的命名空间。搜索 PSR 模式:

加一理解:

Namespaces

干杯;祝你好运。