2017-11-11 174 views
1

是否可以在另一個視圖中顯示視圖?使用CakePHP查看視圖內部3

我有以下代碼:

<?php if ($result->type === 'brochure') : ?> 
    <div> 
     // massive template block 
    </div> 
<?php elseif ($result->type === 'library') : ?> 
    <div> 
     // massive template block different from above 
    </div> 
<?php else : ?> 
    <div> 
     // massive template block different from both above 
    </div> 
<?php endif; ?> 

我想替換那些內容塊可以這麼說。我看了一下view blocks,但是我要麼用錯了,要麼沒有做到我想要的。

這可能在CakePHP 3中嗎?

回答

2

您可以使用該元素。

首先應該建立在SRC /模板/元素目錄元素,像這樣

// in brochure.ctp file in src/Template/Element 
<div> 
    // your massive template block 
</div> 

.ctp格式,那麼你可以這樣調用元素:

<?php if ($result->type === 'brochure') : ?> 

     <?= $this->element("brochure") ?> 

<?php elseif ($result->type === 'library') : ?> 

     <?= $this->element("library") ?> 

<?php else : ?> 

     <?= $this->element("default") ?> 

<?php endif; ?> 
+1

它應該是「**噸** emplate「和」** E ** lement「,小寫字母的名稱將不適用於區分大小寫的文件系統。 – ndm