簡體   English   中英

Kohana-意見之內

[英]Kohana - Views Within Views

我在通過視圖傳遞變量時遇到問題。 但是,首先一些代碼

// i enter the url http://localhost/my_projects/blog/index/index
// classes/controller/index.php
class Controller_Index extends Controller
{
    protected $rendered_view;

    public function before()
    {
        $this->rendered_view = View::factory('index')
                ->set('head', View::factory('subpages/head')
                               ->set('title', 'Site title')
                     )
                ->set('nav', View::factory('subpages/nav')
                               ->set('title', 'Site title')
                     )
                ->set('header', View::factory('subpages/header')
                                ->set('h1', 'Header H1')
                     )
                ->set('sidebar', View::factory('subpages/sidebar')
                                ->set('h1', 'Header H1')
                     )
                ->set('content', View::factory('subpages/content')
                                ->set('h2', 'Header H2')
                                ->set('content', 'some content')
                     )
                ->set('footer', View::factory('subpages/footer')
                                ->set('footer', 'some footer')
                     );
    }

    public function action_index()
    {
        $this->response->body($this->rendered_view);
    }
}

在視圖索引中,我將變量傳遞給默認視圖:

// views/index.php
echo View::factory('default')->set('head', $head);
echo View::factory('default')->set('nav', $nav);
echo View::factory('default')->set('header', $header);
echo View::factory('default')->set('sidebar', $sidebar);
echo View::factory('default')->set('content', $content);
echo View::factory('default')->set('footer', $footer);

我嘗試在顯示視圖中嘗試“ echo”變量:

// views/default.php
echo $head; 
echo $nav; 
echo $header; 
echo $sidebar; 
echo $content; 
echo $footer;

並拋出錯誤:

ErrorException [ 2 ]: file_put_contents(/some_path/application/logs/2011/02/23.php): failed to open stream: Permission denied ~ SYSPATH/classes/kohana/log/file.php [ 81 ]

如果我寫這樣的話:

// views/default.php
include Kohana::find_file('views', 'default');

顯示有效;

chmod 777 /some_path/application/logs/2011/02/23.php文件和所有目錄/some_path/application/logs/遞歸

UPD:

也許

// views/index.php
echo View::factory('default')
->set('head', $head)
->set('nav', $nav)
->set('header', $header)
->set('sidebar', $sidebar)
->set('content', $content)
->set('footer', $footer);

發生的情況是Kohana拋出異常並嘗試記錄錯誤,但無法保存日志文件。

確保/ application / logs可寫(在某些服務器上為755或777)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM