2015-09-30 31 views
0

命名空間通常與laravel了我能夠訪問默認的「用戶」的模式沒有前綴命名空間的路線,任何視圖中,像這樣的盒子:Laravel接入類,而在意見

User::find(1); 

然而,如果我創建另一種模式,例如 - 以訪問視圖中的「業務」,我需要做到以下幾點:

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

+0

插入您的控制器內。 – aldrin27

+0

'{{App \ Business :: find(1) - > name}}'沒有'use'語句,但更好的是像@ aldrin27建議的那樣從控制器注入數據。模板應該很簡單,比如{{$ businessName}} - 執行數據庫查詢和其他邏輯(基本上任何需要從您的問題中使用'use'語句的東西)都是一種反最佳做法。 –

回答

0

不是一個很好的主意,雄辯模型,但在技術上你可以做service injection因爲Laravel 5.1。但同樣,你應該在你的控制器這樣做的,剛好路過的數據更好

線沿線的東西:

@inject('business', 'App\Business') 

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