2017-01-03 55 views
0

使用Laravel和可修改包。我填充與用戶記錄修改一個表,並有下面的代碼片段:Laravel具有可修改的包和捕獲錯誤

<tr> 
    <td width="150">{{ $revision->updated_at }}</td> 
    <td>User</td> 
    <td>{{ $revision->revisionable->first_name }} {{ $revision->revisionable->last_name }}</td> 
    <td width="50">{{ $revision->fieldName() }}</td> 
    <td width="50">{{ $revision->userResponsible()->first_name }}</td> 
    <td>{{ $revision->oldValue() }}</td> 
    <td>{{ $revision->newValue() }}</td> 
</tr> 

獲取用戶第一,當原來的用戶記錄存在,但在某些情況下,原來的記錄(用戶)將被刪除姓工作正常並且它會導致錯誤,因爲用戶記錄不再存在。有沒有我可以用來首先檢查名字段是否返回錯誤的IF語句?然後,我可以顯示仍然存在的記錄的名字/姓氏,如果不存在,也可以顯示其他名字。

提前致謝!

回答

0

刀片具有or語法,真的很好:

{{ $revision->revisionable->first_name or 'N/A'}} 
{{ $revision->revisionable->last_name or 'N/A'}} 

的替代品,雖然不是優雅:

{{ isset($revision->revisionable->first_name) ? $revision->revisionable->first_name : 'N/A' }} 

@if (isset($revision->revisionable->first_name)) 
    {{ $revision->revisionable->first_name }} 
@else 
    N/A 
@endif 
+1

工作太棒了!非常感謝,這個社區很棒! – SGlavach

+1

@Slalach:如果這個或任何答案解決了您的問題,請點擊複選標記,考慮upvoting和[接受它](http://meta.stackexchange.com/q/5234/179419)。這向更廣泛的社區表明,您已經找到了解決方案,併爲答覆者和您自己提供了一些聲譽。沒有義務這樣做。 – sepehr

+0

@sepehr謝謝,SGalvach,您好運 – meda