1

BladeでL4を使っています。条件付きでレイアウトを拡張できるようにしたいと思います。通常の使用ではマスター レイアウトを拡張し、ajax レンダリングでは ajax テンプレートを拡張できるようにしたいと考えています。次のコードを使用します。

@if ( isset($ajax) )
    @extends('layouts.ajax')
@else
    @extends('layouts.master')
@endif

しかし、ページがレンダリングされると、@extend('layouts.master') が出力されるだけです。

レイアウトなどを条件付きで拡張する方法を知っている人はいますか?

ありがとう

4

1 に答える 1

14

最初の行で試してください:

@extends('layouts.' . isset($ajax) ? 'ajax' : 'master')

編集

次の方法でも使用できます。

@extends(((Request::ajax()) ? 'layouts.ajax' : 'layouts.master'))
于 2013-07-03T18:49:57.543 に答える