【发布时间】:2015-02-13 16:12:01
【问题描述】:
在 Laravel 刀片中你可以这样做:
{{ $variable or 'default' }}
这将检查是否设置了变量。我从数据库中获取了一些数据,并且这些变量总是设置的,所以我不能使用这种方法。
我正在寻找用于执行此操作的速记“刀片”功能:
{{ ($variable != '' ? $variable : '') }}
很难使用这段代码或代码来做这件事,因为我不知道如何用链接或类似的东西来做:
<a href="{{ $school->website }}" target="_blank">{{ $school->website }}</a>
我试过了:
{{ ($school->website != '' ? '<a href="{{ $school->website }}" target="_blank">{{ $school->website }}</a>' : '') }}
但是,它不起作用。而且,我想让我的代码尽可能短;)
谁能给我解释一下?
更新
我不使用 foreach,因为我从数据库中获取了一个对象(一所学校)。我将它从我的控制器传递到我的视图:
$school = School::find($id);
return View::make('school.show')->with('school', $school);
所以,我不想在每个 $ 变量(如 $school->name)周围创建一个 @if($value != ''){}。
【问题讨论】: