Kohana 3.3 Model :: factory()类未找到

时间:2013-03-27 14:59:26

标签: php kohana

所以我知道Kohana 3.3中PSR-0标准的实现。但是,必须有一些我不理解的东西,因为我得到以下代码的类找不到错误:

$model = Model::factory('MyModel');

模型定义位于:

classes/Model/MyModel.php

我的班级到底是怎么找不到的?

实际代码:

位于classes/Model/VoiceTalent.php的模型

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

    class VoiceTalent
    {
         //methods and fields
    }

控制器代码:

$talent = Model::factory('VoiceTalent');

确切的错误消息:

ErrorException [ Fatal Error ]: Class 'Model_VoiceTalent' not found
SYSPATH\classes\Kohana\Model.php [ 26 ]

1 个答案:

答案 0 :(得分:4)

你的班级命名很差。

你有:

class VoiceTalent

应该是:

class Model_VoiceTalent

因为你必须在类名中包含它所包含的所有文件夹(由_分隔)。在这种情况下,您只需添加Model_前缀。您可以阅读有关class naming convention in Kohana's docs的更多信息。