我的项目中有一个模型目录,我想用不同的命名空间保存/ files类。 例如:
models/User.php with classname Model_User
models/Table_User.php with classname Model_Table_User
对于第一个命名空间,我在bootstrap.php中有这个
$resourceLoader->addResourceTypes(array(
'model' => array(
'namespace' => 'Model',
'path' => 'models'
)
));
我无法弄清楚如何添加第二个命名空间,以便检测以Table_
开头的文件有什么想法吗?
现在我已经添加了一个名为'tables'的第二个目录,但它变得令人困惑,因为我有两个模型名称两次(一次在模型diretory中,一次在tables目录中)
答案 0 :(得分:1)
因为Table_User中的_。自动加载器可能正在寻找:
models/Table/User.php
尝试将文件重命名为
TableUser.php
课程:
Model_TableUser
或者创建Table
文件夹并将User.php放在那里。
答案 1 :(得分:0)
这是我自己做的事情 我将“Model_”放在'{APPLICATION_PATH} / models /'和“DbTable_”中,坐在'{APPLICATION_PATH} / models / dbtables /'中。
$resourceLoader->addResourceTypes(array(
'model' => array(
'namespace' => 'Model_',
'path' => APPLICATION_PATH.'/models/'
),
'dbtable' => array(
'namespace' => 'DbTable_',
'path' => APPLICATION_PATH.'/models/dbtables/'
));
您当然应该根据您的类名和文件夹结构修改它。 APPLICATION_PATH在index.php中定义 - 但我不记得它是否包含尾部斜杠,因此请检查以防万一。 (我现在不在我的电脑上所以我无法检查......)
简单就是这样! :)