2016-04-08 8 views
1

に基づいてステートメント構文、名前変更した場合、私はLaravelフレームワークにPHPのネイティブから上に移動するつもりです。 以下のコードを見てください。エラーでなければなりませんが、これは私に何を欲しているかを示します。私はLaravelの私のデータベースに基づくIF文と混同しています。値が1であれば、その後、私は私のウェブサイト上で「ロスト」をプリントアウトします:Laravel 5.2だから、価値

<td> 
     {{ 
     @if($book->status==1) 
      echo 'Available'; 
     @elseif($book->status==2) 
      echo 'Lost'; 
     @else 
      echo 'Not Available'; 
     @endif 
     }} 
</td> 

は、データベースに基づいて名前を印刷することが可能な例ということですか?ありがとうございました。

+2

ジョセフ・シルバーの最高の答えを選ぶべきです。彼は以前に答えた、ゲッター(あなたが使用すると言った)であなたにオプションを与えました。 73badの答えは後で掲載され、Joseph Silberのものには何も追加されません。 –

+0

ええ、私はこのページをリロードする前に既に気付きました。私はそれを再選択しました。 –

答えて

1
<td> 
    @if ($book->status == 1) 
     Available 
    @elseif ($book->status == 2) 
     Lost 
    @else 
     Not Available 
    @endif 
</td> 

このためのより良い場所はブックモデル自体に次のようになります。

public function getAvailabilityAttribute() 
{ 
    if ($this->status == 1) return 'Available'; 

    if ($this->status == 2) return 'Lost'; 

    return 'Not Available'; 
} 

次に、あなたがあなたのビューで直接それを使用することができます:

<td>{{ $book->availability }}</td> 
+0

作品です!提案もありがとう。ええ、私はモデルにそれを置くよ、もう一度ありがとう! –

1

は次のように使用します:

<td>  
    @if($book->status==1) 
     {{ 'Available' }} 
    @elseif($book->status==2) 
     {{ 'Lost' }} 
    @else 
     {{ 'Not Available' }} 
    @endif 
</td> 
+0

こんにちは、お返事ありがとうございます、あなたのコードは{{}}の有無にかかわらず、動作しています。 –