我无法在我使用Laravel的PHP项目中处理异常错误

时间:2013-04-08 06:45:27

标签: laravel php

我的控制器中有一个以下的restful功能

public function get_index()
{
    return Event::all();
}

但它会返回以下错误

Unhandled Exception

Message:

Call to undefined method Laravel\Event::all()
Location:

/Applications/MAMP/htdocs/calendar/application/controllers/home.php on line 8

这是我的完整控制器

class Home_Controller extends Base_Controller {
    public $restful = true;

    public function get_index()
    {
        return Event::all();
    }

}

为什么我会收到此错误以及如何解决?

2 个答案:

答案 0 :(得分:3)

再次,您需要命名您的模型,您与Laravel的内置Events类冲突。

<?php namespace Model;

class Event {

}

然后当您想要调用它时,请使用return Model\Event::all();

调用它

答案 1 :(得分:2)

必须注册命名空间和类。

//application/start.php

Autoloader::map(array(
    'Modelpath' => path('event').'models/event.php', //path to your directory and class
));

Autoloader::namespaces(array(
    'Model' => path('Modelpath'),
));

如果你不喜欢用它的命名空间调用你的类,你可以为它定义一个别名:

//application/config/application
'aliases' => array(
    ...
    'Event' => 'models\\Event' //path and filaname of your class without extension
),