我的数据库中有一个名为“roles_users”的表。以及我的应用程序/模型文件夹中名为“roles_users.php”的模型:
<?php
class Model_Roles_users extends ORM {
}
我正在尝试使用以下代码创建一个新行:
$role = ORM::factory('roles_users');
但是我收到一条错误,上面写着“Class'Mode_Roles_users'未找到”。它正在与其他表一起工作,但不是这个。有人知道为什么吗?
答案 0 :(得分:0)
您不应该为数据透视表创建模型,而是添加如下所示的行:
$user->add('roles', ORM::factory('role', array('name'=>'login')));
如果你真的坚持为该表建立一个模型,它将是Model_Roles_User(model / roles / user.php,只有其中的最后一个单词的名称为单数)。
答案 1 :(得分:0)
也许这是因为符号“_”用作目录分隔符,因此您无法在文件名中使用它。
来自http://kohanaframework.org/3.1/guide/kohana/autoloading:
类名中的任何下划线字符都将转换为斜杠