2016-08-02 5 views
1

問題があります。hasMany関係がエラーを返します。laravel:findがnullのときにhasmanyエラーが発生する

これはコントローラです:

public function test() 
{ 
    $a = Province::find(410)->test; 
} 

、これが私のモデルである:私の省は::見つける(410)がnullの場合

public function test() 
{ 
    return $this->hasMany('App\Http\Models\Places\City','province'); 
} 

が、その後

は、プログラムがエラーをスローします次のような例外:

Whoops, looks like something went wrong. 

1/1 
FatalThrowableError in Province.php line 127: 
Call to a member function hasManyThrough() on null 
in Province.php line 127 
at Province::get_area_by_province_id('410') in CommonController.php line 66 

enter image description here

しかし、結果が出た場合。プログラムは問題なく動作します。

...どうすればいいですか?

私は分かりません!!!

私を助けてください!

ありがとうございます! IDを使用すると、findメソッドに提供されている場合は、チェックすべき

答えて

2

OR

は何もありません場合ModelNotFoundExceptionをスローしますlaravelの他の方法findOrFailを使用することを検討してnullではありません。

+0

ありがとうございました。私は試してみる –

+0

 if(Province::find($id)) //i add this code to check it { return Province::find($id) ->hasMany('App\Http\Models\Places\City','province') ->select('id','name','province') ->get()->toArray(); } 

関連する問題