2016-04-07 9 views
0

既にログインしていて、ユーザーが女性であるかどうかを確認したい特定のイメージを表示する。そうでない場合は別のイメージを表示する。ここに私のコードです:私たちのテーブルでLaravel - 入れ子の場合

@if(Auth::check()) 

    <a id = "login-popup-title" href="profile" > 
     profile 

     @if ({{Auth::User()->gender}} == "w") 
      <img src="assets/img/profile-f.png"> 
     @else 
      <img src="assets/img/profile-m.png"> 
     @endif 
    </a> 
@else 
    <a data-toggle="modal" data-target="#regModal">register/login 
     <img src="assets/img/lock.png"> 
    </a> 
@endif 

、我々はw(女性)とm(男性)として、ユーザの性別情報を保存します。

しかし、私はエラーを取得する:

FatalErrorException in 33957561dccca78dc8674528d604ac88fdbdaef8.php line 74: syntax error, unexpected '<'

それを行うには?

+2

Bladeデリミタを '@ if'条件の中で使うべきではないので、' @if({Auth :: User() - > gender}} == "w") ' :user() - > gender == "w") '。 – Bogdan

答えて

3

あなたの問題は、この行である:

@if ({{Auth::User()->gender}} == "w") 

あなたはifブロックにすでにいるので、あなたは中括弧を必要としない - それらは印刷のためだけです。代わりに、次の操作を行います。現状では

@if (Auth::User()->gender == "w") 

を、Laravelはこのようなものに変換します:

<?php if <?php echo Auth::user()->gender; ?> == "w": ?> 

そして、私はそれが動作しない理由あなたが見ることができます確信しています。 :)それは予期せぬことについて不平を言っている理由です。<

関連する問題