首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在php和twig中呈现视图?

如何在php和twig中呈现视图?
EN

Stack Overflow用户
提问于 2019-11-27 19:19:24
回答 2查看 2.4K关注 0票数 1

我正在创建一个网页,学生和教师登录,教师创建级别,学生可以做这个级别。

我解释说,我使用的是带有小枝的php,我想在函数中呈现一个传递参数的视图。我创建了一个名为“教授”的伙伴,在那里我拥有目录控制器、模型和模板。

在模板中,我有professors.html,其中我显示了一些信息和一个按钮来为学生创建一个级别,还有crearNivell.html,在那里老师将能够创建这个级别。当我在页面上查看教授时,我的URL是:

当我单击“创建级别”按钮时,我希望我的URL如下所示:

相反,我得到了这个URL,而这个URL返回了一个错误。

Controllers/ProfessorsController.php中,我有这样的代码:

代码语言:javascript
复制
class ProfessorController extends Controller{

public function process($params)
{
    /*var_dump($params);
    die();*/

    if(empty($params[0])){

        $this->getProfessor(); //Here I return the view professor

    }elseif(isset($params[0]) && $params[0] == "crearNivell"){

        $this->twig = "crearNivell.html";
    }

}

public function getProfessor(){

    $this->twig = "professor.html";
}

}

有人能帮我处理密码吗?

当我使用var_dump()时,我得到以下信息:

应该是这样的:

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-12-04 19:21:12

几天前我找到了问题的答案。我让自己变得复杂了,就像这样:

首先在“模板”文件夹中创建视图。

$params被引用到URL。例如:

铝材是

AlumneController.php

然后在AlumneController.php中,将视图的名称放在没有.html的地方,然后使用$this->twig = "name_Of_The_View.html";显示它

代码语言:javascript
复制
<?php
 class AlumneController extends Controller{

    public function process($params)
    {
        /*var_dump($params);
        die();*/

        if(empty($params[0])){

            $this->getAlumne();
            /*echo $usuari = $_SESSION["username"];*/

        }else if(isset($params[0]) && $params[0] == "instruccions"){

            $this->twig = "instruccions.html";
            /*echo $usuari = $_SESSION["username"];*/

        }else if(isset($params[0]) && $params[0] == "resultats"){

            $this->twig = "resultats.html";
            /*echo $usuari = $_SESSION["username"];*/

        }
    }

    public function getAlumne(){

        $this->twig = "alumne.html";
    }
 }

alumne.html

在按钮或链接中,您将使用<a href="bundle/view_name">Instruccions</a>编写路径的页面。

代码语言:javascript
复制
<a class="mdl-navigation__link" href="alumne/instruccions">Instruccions</a>
<a class="mdl-navigation__link" href="alumne/resultats">Resultats</a>
票数 0
EN

Stack Overflow用户

发布于 2019-11-27 19:43:26

我想你要找的是Twig API

更具体地说,您需要下面的行来呈现一个在数组中传递一些参数的模板:

代码语言:javascript
复制
echo $template->render(['the' => 'variables', 'go' => 'here']);

如果您使用PHP --向浏览器“打印”某些内容的最快方式是echo,那么不要犹豫使用它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59077140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档