【发布时间】:2012-07-26 09:39:28
【问题描述】:
我已经开始阅读 kohana 文档,但并没有真正理解,我需要在 public $template = "index"; 等控制器中定义的索引页面,但是如何将其他 html, php 文件添加为链接?因为如果我只是将它们放在视图的文件夹中,它就找不到它们。
【问题讨论】:
标签: php html frameworks kohana
我已经开始阅读 kohana 文档,但并没有真正理解,我需要在 public $template = "index"; 等控制器中定义的索引页面,但是如何将其他 html, php 文件添加为链接?因为如果我只是将它们放在视图的文件夹中,它就找不到它们。
【问题讨论】:
标签: php html frameworks kohana
如果您需要先创建一个新页面,您需要在控制器中创建一个函数。您还需要在该函数中分配视图文件。 例如, 这里我将在用户控制器中创建一个用户登录页面。
<?php
Class Controller_User extends Controller_Welcome
{
/**For get User Login page**/
public function action_login()
{
$view= View::factory('login');
echo $view;
}
}
?>
login.php文件放在application/views/login.php
现在你的登录页面在http://mysite.com/user/login/这样的url中调用
如果要调用普通模板文件中的页面,首先需要指定模板文件。然后你可以很容易地调用模板文件中的页面。
例如,
user.php controller:
<?php
Class Controller_User extends Controller_Welcome
{
/**For get User Login page**/
public function action_login()
{
$this->template='template.php';
$view= View::factory('login');
$this->template->content = $view;
}
}
?>
template.php view file:
-- your html datas here --
<?php
echo new View("header");
?>
-- your html datas here --
<?php
echo $content; ?>
-- your html datas here --
<?php
echo new View("footer");
?>
-- your html datas here --
这里的header是header.php,footer是footer.php。所有这些文件都放在 applications/views/ 文件夹中。
【讨论】:
public $template = "index" 表示Controller_Template 类将从views/index.php 文件加载视图。您可以将所需链接直接添加到此文件或动态添加 - 使用模板变量或子模板。
此 wiki 可能会有所帮助:http://kerkness.ca/kowiki/doku.php
【讨论】: