What I try to do:
I try to pass a boolean to my view to to check if it is true or not. If it is set to true, I want to add a class. I use Laravel. Actually, here is my situation:
Here is my code:
index.blade.php
@foreach($finances as $finance)
@if ($finance->depense = 1)
<tr class="red">
@elseif ($finance->depense = 0)
<tr>
@endif
<td><a href="{{ URL::to('finances/' . $finance->id) }}">{{$finance->description}}</a></td>
<td>{{ $finance->depense }}</td>
<td>{{ $finance->prix }}</td>
<td>{{ $finance->tps }}</td>
<td>{{ $finance->tvq }}</td>
<td>{{ $finance->grandtotal }}</td>
</tr>
@endforeach
FinancesController.php
public function index()
{
$finances = Finance::all();
return View::make('finances.index')->withFinances($finances);
}
What is wrong?
The answer was finaly very simple..
Instead of
@if ($finance->depense = 1)
<tr class="red">
@elseif ($finance->depense = 0)
<tr>
@endif
I changed the = to ==
@if ($finance->depense == 1)
<tr class="red">
@else
<tr>
@endif
Don't forget to use double equal to compare.
I could be wrong but I thought you don't need to do comparison with boolean value for a condition check, as it defaults to true.
@if ($finance->depense)
<tr class="red">
@else
<tr>
@endif
If you want to check for false add the '!'
@if (!$finance->depense)
<tr class="red">
@else
<tr>
@endif