Laravel在视图中访问没有命名空间的类


Laravel access classes without namespace in views

通常,使用laravel开箱即用,我可以在任何视图中访问默认的"User"模型,而无需前缀命名空间路由,如下所示:

User::find(1);

然而,如果我创建另一个模型,例如-"Business",为了在视图中访问它,我需要做以下事情:

App'Business::find(1);

有没有办法在所有视图中全局"使用"类,所以它就像用户类一样工作?

提前感谢。

编辑:如果我在blade.php文件中执行以下操作,例如:

@extends('layouts.main')
@section('content')
    <?php
        use App'Business;
    ?>
    {{ Business::find(1)->name }}
@stop

但这似乎是一种不太干净的方法。还是我错了,这是可以接受的?

p。S -使用Laravel 5.1

对于Eloquent模型来说不是一个好主意,但是从Laravel 5.1开始,技术上你可以做服务注入。但是你最好还是在你的控制器中这样做然后把数据传入。

类似以下语句的内容:

@inject('business', 'App'Business')
@section('content')
    {{ $business->find(1)->name }}
@stop