laravel - 不显示 1 个变量是否等于 0 而另一个变量在 laravel 中为空
问题描述
我不知道为什么我不能使这个条件起作用。首先,我将向您展示可能的 foreach 表。
@foreach( $w1ProductHistory as $w1ph )
@php
$totalCost = $w1ph->orderItem->cost * $w1ph->stock_in_qty;
@endphp
@if($w1ph->stock_in_qty!='0' && $w1ph->delivery_note!='')
<tr>
<td>{{$w1ph->orderItem->product_code}}</td>
<td>{{$w1ph->orderItem->product_name}}</td>
<td><a href="{{ URL('/orders/'.$w1ph->order->id)}}" class="text-info">{{$w1ph->order->purchase_no}}</a></td>
<td>{{$w1ph->delivery_date}}</td>
<td>{{$w1ph->companies->comp_name}}</td>
<td>{{$w1ph->orderItem->cost}}</td>
<td>{{$w1ph->stock_in_qty}}</td>
<td>{{number_format($totalCost)}}</td>
<td>
@if(isset($w1ph->delivery_note))
<a data-placement="left" data-toggle="tooltip" title="Delivery Notes: {{$w1ph->delivery_note}}" href="{{-- {{ route('orders.edit',$order->id) }} --}}" class="btn btn-sm btn-icon btn-default"><i class="fab fa-readme"></i></a>
@endif
</td>
</tr>
@endif
@endforeach
我要做的是隐藏$w1ph->stock_in_qty!='0和$w1ph->delivery_note!=''。
如果$w1ph->stock_in_qty!='0但$w1ph->delivery_note!=''具有值,则应显示该行。
我已经尝试过@if($w1ph->stock_in_qty!='0' && $w1ph->delivery_note!='')
,@if($w1ph->stock_in_qty!='0' && !empty($w1ph->delivery_note))
甚至将“&&”更改为and。即使只满足一个条件,它仍然会隐藏该行。
同样,只有当两个条件都满足而不满足其中任何一个时,我才试图隐藏该行。我怎样才能实现它?提前致谢!
解决方案
在刀片文件中包含 @php 标签是否完全合法,但您可能会重新考虑是否真的需要这样做。
为什么?因为它使您的刀片文件更干净,您应该努力保持刀片文件除了获取属性/关系之外没有任何其他逻辑。此外,如果您需要在应用程序的其他位置进行该计算,您可以在模型上进行计算,并且如果值背后的算法发生变化,您只需将其更改为一个位置。
在我看来,更好的解决方案是在您的 ProductHistory(?) 模型上定义一个属性,该属性为您提供此值,然后执行 $w1ph->totalCost;
另外,我会添加一个属性,该属性会根据您是否需要在表格中显示此项目来返回布尔值,例如 $w1ph->showInTable/visible/showDisplay 等。
你试过没有 0 左右的引号吗?或计数($w1ph-->stock_in_qty)== 0)?
推荐阅读
- asp.net-mvc - 输入键上的 Textarea 换行在 .NET Core MVC 应用程序上不起作用
- php - PHP Memcache/Memcached 的 addServer 方法是如何工作的?
- node.js - Neo4j 密码中无法识别我的参数映射
- java - 如何使用 JavaMail 的 MimeUtility 或 Apache Commons 和quoted-printable 获得 UTF-8 字符的两序列表示?
- android - Android Studio 突然在某些文件上显示错误的编码错误
- paperjs - The method Path.Line.translate() does not update the segments of the path
- r - Tabulate column containing list in R
- java - Multithreading Issue with group chat in Java Sockets
- c# - Connect to Oracle Database in C#
- css - flexbox css可以用来创建垂直和水平页面覆盖消息吗