本番環境だとエラーが起きてしまう現象

@if($user->profile_image)

ここにエラー制御演算子は使えません。
PHP公式マニュアル エラー制御演算子

Attempt to read property "profile_image" on null (View: /app/resources/views/users/show.blade.php)

これは

nullのprofile_imageを読み込もうとしていますというようなエラー

というエラーじゃなく、$usernullなのに、そのプロパティを読もうとしているからエラーになっています。

if文からprofile_imageがnullの場合はデフォルトで用意している表示をするようにしている

そのチェックの前に$userが確実にオブジェクトがセットされるようにすべきなのか、empty($user->profile_image)の様にまとめてチェックしても良いのかは全体を見ないと判断できません。
__$usernullがセットされていること自体が、不適当だと思う...

コメントを投稿

0 コメント