Eu costumava usar a função isset para verificar se uma collection – ou qualquer outro tipo de variável – tinha sido instanciada. Por exemplo:

{{ ( isset( $nome ) ) ? $nome : 'Nome não informado' }}

Este código é mais curto do que escrever um bloco padrão de if/else:

@if(isset($nome))
    {{$nome}}
@else
    Nome não informado
@endif

Você sabia que pode deixar esse código ainda mais limpo? Basta usar o comando or do blade:

{{$name or 'Nome não definido'}}

Resumo desta dica em vídeo

A diretiva @OR funciona para objetos?

Sim. Esta dúvida foi levantada em um fórum de Laravel e achei interessante compartilhar aqui também.

Como esta diretiva é essencialmente um wrapper de da função isset, funciona perfeitamente para objetos e seus atributos.

Rota:


Route::get('/teste', function () {
    $obj = new stdClass();
    $obj->a = 'Letra a';
    $obj->b = null;
    return view('teste',['obj' => $obj]);
});

View:

A: {{$obj->a or 'A não definido'}}
<br>
B: {{$obj->b or 'B não definido'}} 
Laravel Blade: diretiva OR (@or)
5 (100%) 3 votos