繁体   English   中英

Raintpl的超薄框架

[英]Slim framework with raintpl

我有一个使用RainTpl3作为模板引擎的现有项目。 我正在尝试将其移植到Slim框架2。
问题1:有什么方法可以使我的$tpl对象苗条使用(通过DI或任何其他类似方法)呈现其视图。

我设法破解了一种在外部函数中配置创建模板对象的方法,该函数然后应返回内容,然后苗条应回显。 之前它无法正确配置tpl,所以我在初始化文件中对其进行了配置。 现在当我使用$tpl->draw('index'); 这表示找不到模板索引。 Q2:为什么找不到模板?

MY_APP_ROOT_ / Public / index.php

require_once "../init.php";

# Fire up an app
$app = new Slim\Slim();

$app->get('/', function(){echo MyNS\Router\APIDefault::showHome();});

$app->get('/Hello', function() {
    echo "Get Route is working.";
});
# Run the Slim application
$app->run();

:MY_APP_ROOT_ / Routes / APIDefault.php

<?php
namespace MyNS\Router; 


class APIDefault
{

    private function __construct( $argument)
    {
        throw new \Exception("Error Constructor not allowed", 1);

    }


    public static function showHome()
    {

        $tpl = new \Rain\Tpl();

         $tpl->assign('Name','Abhinav');
        $a = $tpl->draw('index',$return_string = true);
        return $a;
    }
}

index.tpl存储在MY_APP_ROOT_ / Templates /中。

  1. 您可以制作自己的包含该模板引擎的View脚本。 Slim也在这里为Twig和Smarty做到了这一点 (仅Slim 2)。

  2. 好像您从没有在目录中搜索模板一样,对吗? 但是,如果您使用自己的View插件,则可以将其作为Constructor或其他工具中的参数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM