全局包含 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 模式:
加一理解:
干杯;祝你好运。
我有一个 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 模式:
加一理解:
干杯;祝你好运。