CakePHP从远程目录扩展模型

时间:2013-01-30 22:20:03

标签: php cakephp model

我正在尝试做一些非正统的事情。我在一个目录中安装了2个cakePHP。是否可以将模型从我的应用程序安装扩展到另一个?

这就是我的目录结构:

app1
  app
    model
      * app1Model
    view
    controller
  libs
  plugins
  ventors

app2
  app
    model
      * app2Model (I want to extent this model with app1Model)
    view
    controller
  libs
  plugins
  ventors

我希望我的app2Model扩展app1Model。

1 个答案:

答案 0 :(得分:2)

你确定可以!您正在寻找的是App::build()。它允许您在使用App::uses()时让Cake搜索其他目录。例如,您可以将其他路径添加到模型中,如下所示:

// assuming your app is under `/var/www`
App::build(array(
  'Model' => array(
    '/var/www/app1/app/model'
  )
));

您使用App::build()告诉Cake"当我使用App::uses()时,也可以在这里查找课程和#34;。您可以将上面的代码放在app2的bootstrap文件中,告诉cake"还可以在/var/www/app1/app/model中查找模型。

现在在app2中,当你使用:

App::uses('app1Model', 'Model');

对于名为app2/app/model的模型,它会在/var/www/app1/app/modelapp1Model中查找。您可以使用App::build()指向控制器和插件等其他内容,如文档中所示。

小心名称冲突。从它的外观来看,您可能需要考虑building a plugin instead

相关问题