#laravel #laravel-blade
Вопрос:
Я хочу, чтобы при изменении значения TVA изменялся текст, но в итоге в обоих случаях появляется один и тот же результат — «ЧИСТЫЙ TTC».
Функция :
public function invoice()
{
return $this->belongsTo(Invoice::class, 'invoice_id', 'id');
}
public function tvaText(){
if( $this->TVA_value == 0 ){
$this->tva_text='NET TTC';
}elseif($this->TVA_value != 0){
$this->tva_text='Total TTC';
}
return $this->tva_text;
}
Показать :
@foreach($invoice->details as $item)
<tr>
<td>{{ $loop->iteration }}</td>
<td>{{ $item->product_name }}</td>
<td>{{ $item->quantity }}</td>
<td>{{ $item->unit_price }}</td>
<td>{{ $item->row_sub_total }}</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="3"></td>
<th colspan="2">TVA value </th>
<td>{{ $invoice->TVA_value }}</td>
</tr>
<tr>
<td colspan="3"></td>
<th colspan="2">sub total</th>
<td>{{ $invoice->sub_total }}</td>
</tr>
<tr>
<td colspan="3"></td>
<th colspan="2">TVA total</th>
<td>{{ $invoice->TVA_total }}</td>
</tr>
<tr>
<td colspan="3"></td>
<th colspan="2">{{ $item->**tvaText()** }}</th>
<td>{{ $invoice->TTC_total }}</td>
</tr>
@endforeach
Пожалуйста, посмотрите фотографии, чтобы вам стало ясно, что я имею
в виду, знает ли кто-нибудь, как изменить текст или каким-либо другим способом добиться этого?
Комментарии:
1. можете ли вы добавить код, который изменяет значение $this->tva_text? ваша логика отображения телетекста верна,но, похоже, значение не обновляется, вам следует проверить значение
Ответ №1:
Вы можете легко сделать это на лезвии.
@if($invoice->TVA_value == 0 )
<td>NET TTC</td>
@else
<td> Total TTC </td>
@endif