В CakePHP 3.6 Layout я не загружаю представления - PullRequest
0 голосов
/ 26 июня 2018
<!DOCTYPE html>
<html lang="en">
<head>
<title><?= h($this->fetch('title')) ?></title>
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<!-- Include external files and scripts here (See HTML helper for more info.) -->


 <?php
    echo $this->fetch('meta');
    echo $this->fetch('css');
    echo $this->fetch('script');
    ?>
</head>
<body>

<!-- If you'd like some sort of menu to
show up on all of your views, include it here -->
<div id="header">
    <div id="menu">...</div>
</div>

<!-- Here's where I want my views to be displayed -->
<?= $this->fetch('content') ?>

<!-- Add a footer to each displayed page -->
<div id="footer">...</div>

</body>
</html>

Привет,

чтение документации CakePHP 3.6 говорит мне, что в макете контент загружается в: <?= $this->fetch('content') ?>

В CakePHP 3.6 представления сохраняются в src / Template

Мой взгляд: src/Template/Casa/casa.ctp

Таким образом, если я создаю представление, называемое, например, casa.ctp, с его контроллером CasaController.php, чтобы это представление было отображено в макете, я должен назвать его так: <?= $this->fetch('casa') ?>

Это так? потому что я пытаюсь, но у меня это не работает, ничего не загружается, но и ошибок не дает.

привет

1 Ответ

0 голосов
/ 26 июня 2018

вам нужно действие casa в вашем CasaController.

class CasaController extends AppController
{

    public function initialize()
    {
        parent::initialize();
    }

    public function casa()
    {

    }

}
...