如何使用PHP activerecord管理关系

如何使用PHP activerecord管理关系,php,codeigniter,hmvc,phpactiverecord,Php,Codeigniter,Hmvc,Phpactiverecord,我在CodeIgniter中有一个现有的带有HMVC扩展的项目。还可以通过sparc使用php activerecord 对于一个新模块,我创建了两个具有一对多关系的表,直接在DB级别强制执行(在MySQL中)。表格为“nassignment”(PK id)和“nassignment_assignment”(FK assignment_id) 在models下,我创建了两个类'nassignment.php',分别有类nassignment和类名为nassignment_assignee的'na

我在CodeIgniter中有一个现有的带有HMVC扩展的项目。还可以通过sparc使用php activerecord

对于一个新模块,我创建了两个具有一对多关系的表,直接在DB级别强制执行(在MySQL中)。表格为“nassignment”(PK id)和“nassignment_assignment”(FK assignment_id)

在models下,我创建了两个类'nassignment.php',分别有类nassignment和类名为nassignment_assignee的'nassignment_assignment.php'

下面是我在controller中尝试的代码

$this->load->model("nassignment");
$nAssignmentArr = $this->nassignment->all();
并得到以下错误

[Fri Aug 02 13:50:52 2013] [error] [client 127.0.0.1] PHP Fatal error:  Uncaught 
exception 'ReflectionException' with message 'Class Nassignmentassignee does not exist' 
in /home/kapil/projects/<project>/application/sparks/php-activerecord/0.0.2/vendor/php-
activerecord/lib/Reflections.php:33\nStack trace:\n#0 
/home/kapil/projects/<project>/application/sparks/php-activerecord/0.0.2/vendor/php-
activerecord/lib/Reflections.php(33): ReflectionClass-
>__construct('Nassignmentassi...')\n#1 
/home/kapil/projects/<project>/application/sparks/php-activerecord/0.0.2/vendor/php-
activerecord/lib/Relationship.php(286): ActiveRecord\\Reflections-
>add('Nassignmentassi...')\n#2 /home/kapil/projects/<project>/application/sparks/php-
activerecord/0.0.2/vendor/php-activerecord/lib/Relationship.php(281): 
ActiveRecord\\AbstractRelationship->set_class_name('Nassignmentassi...')\n#3 
/home/kapil/projects/<project>/application/sparks/php-activerecord/0.0.2/vendor/php-
activerecord/lib/Relationship.php(464): ActiveRecord\\AbstractRelationship-
>set_inferred_class_name()\n#4 /home/kapil/projects/<project>/application/sparks/php-
activerecord/0.0 in /home/kapil/projects/<project>/application/sparks/php-
activerecord/0.0.2/vendor/php-activerecord/lib/Reflections.php on line 33
naSignment_.php

class Nassignment_assignee Extends ActiveRecord\Model{
    static $table_name = 'nassignment_assignee';
}

任何建议,为什么它不起作用

请尝试确保文件名与类名匹配,以防万一。看


显然,库也必须按照UCfirst命名约定命名。

我想我可能也有类似的问题。为什么没有人尝试这些问题?
class Nassignment_assignee Extends ActiveRecord\Model{
    static $table_name = 'nassignment_assignee';
}