2016-12-30 29 views
1

我越來越麻煩,從我想要得到從表媒體 已經使2和表之間的關係有關的信息外鍵 獲取數據非對象的性質,但仍錯誤給我這個Trying to get property of non-object在儘管我的表的這些表之間有數據試圖讓Laravel

莫代爾檔案

public function media(){ 
 

 
     return $this->belongsTo('App\Media'); 
 
    }

莫代爾媒體

public function dossier(){ 
 

 
     return $this->hasOne('App\Dossier'); 
 
    }

,我的觀點

我發送的變量$檔案,我沒有環 我試圖讓所有信息

@if($dossier->media) 
 
         <?php $ext=substr($dossier->media->url,-3) ;?> 
 
          <label class="med"> 
 
           @if($ext=='pdf') 
 
            <i class="fa fa-file-pdf-o"></i> 
 
           @else 
 
            <i class="fa fa-file-word-o"></i> 
 
           @endif 
 
            {{$dossier->media->libelle}} 
 
          </label><a class="btn btn-warning btn-small pull-right" href="documents/{{$dossier->media->url}}"><i class="fa fa-print"></i></a> 
 
           <br><br> 
 
           <button id="btn-add{{$dossier->id}}" class="btn btn-primary">Ajouter un Media</button> 
 
         @else 
 
          <div class="div1{{$dossier->id}}"> 
 
           <div class="alert alert-warning">Aucune media</div><button id="btn-add{{$dossier->id}}" class="btn btn-primary">Ajouter un Media</button> 
 
          </div> 
 

 
         @endif

+0

@AlexeyMezenin ** $ dossier **定義當我做循環 – meduprise

回答

0

貌似$dossier爲空。您應經常檢查,如果對象是null,如:

@if (is_null($dossier) && $dossier->media) 
+0

它顯示相同的結果 問題是當我寫代碼像我什麼都沒有顯示,當我寫它whithout @if消息例外顯示 – meduprise

+0

請'ddoss($ dossier);' –

+0

我怎麼能發貼 – meduprise

0

檢查模型Dossier,它可能是這樣的:

public function media(){ 
return $this->belongsTo('App\Media', MEDIA_FORIGNKEY); 
} 

希望這有助於你!

+0

表媒體有備案表檔案的關鍵 所以在媒體表中有姓名** dossier_id ** – meduprise