Variables 将变量传递给视图,kohana 3.3不工作,未定义变量:

Variables 将变量传递给视图,kohana 3.3不工作,未定义变量:,variables,kohana,Variables,Kohana,我有一个愚蠢的问题。。。为什么我要传递e变量来查看浏览器并返回我 未定义变量:?我只是克隆了我的第一个方法(对于ads,相同的过程)。但有了广告,分类就没用了,这太愚蠢了,为什么? 我展示我的小应用程序 我的控制器: <?php defined('SYSPATH') or die('No direct script access.'); class Controller_Ads extends Controller_Template { public $template = '

我有一个愚蠢的问题。。。为什么我要传递e变量来查看浏览器并返回我 未定义变量:?我只是克隆了我的第一个方法(对于ads,相同的过程)。但有了广告,分类就没用了,这太愚蠢了,为什么? 我展示我的小应用程序

我的控制器:

<?php defined('SYSPATH') or die('No direct script access.');

class Controller_Ads extends Controller_Template {

    public $template = 'template';

    // function indes Ads
    public function action_index()
    {
        $ads = ORM::factory('ads')->find_all(); // load all object inside ads table

        $view = new View('ads/index');  // load the view/ads/index.php
        $view->set('ads', $ads);        // set 'ads' object to view

        $this->template->set('content', $view);
    }

    // view single ads
    public function action_single()
    {
        $id = $this->request->param('id');
        $record = ORM::factory('ads')
        ->where('id_ads', '=', $id)
        ->find();

        $view = new View('ads/single');
        $view->set('ads', $record);         

        $this->template->set('content', $view);
    }

    public function action_category()
    {
        $category = ORM::factory('category')->find_all(); 

        $view = new View('ads/index');  
        $view->set('category', $category);      

        $this->template->set('content', $view);
    }

} // End Ads

为什么只针对类别??而不是ads?

只有一个操作函数运行, 这意味着在
action\u index()
中设置了
$ads
变量,但未设置
$category
。 在
action\u category()
中设置$category变量,但未设置
$ads

如果只希望使用这些变量,则应创建另一个ads/category.php视图,并在
action\u category()
函数中使用该视图,并删除该视图中对
$ads
的引用


另外,您似乎期望
action\u category()
函数正在运行,根据您看到的错误,它实际上正在运行
action\u index()
。检查您的路线,找出原因。

我已编辑了邮件。如果这回答了您的问题,您可以接受答案吗?
    <?php foreach ($ads as $obj) : ?>
        <h3><?php echo HTML::anchor('/ads/single/'.$obj->id_ads, $obj->title_ads); ?></h3>
        <p><?php echo $obj->description_ads; ?></p>
        <p>Autore: <?php echo $obj->author_ads; ?> || creato il <?php echo $obj->date_ads; ?> || categoria: <?php echo HTML::anchor('#', $obj->category->category_name); ?></p>
    <?php endforeach; ?>
<?php foreach ($category as $obj) : ?>
    <?php echo $obj->id; ?>
<?php endforeach; ?>
ErrorException [ Notice ]: Undefined variable: category