我有相同的名称组件和模型,例如产品。那么我们如何使用组件功能和模型功能呢?
例如:Map map = new HashMap<String,String>
/ $this->componentName->function()
答案 0 :(得分:1)
假设这是您自己的代码,我会更改您的组件使用的名称。我倾向于在CakePHP 2中处理这个问题的方法是使用复数命名约定和组件。因此,在您的示例中,您将拥有模型Product
和组件ProductsComponent
。然后在您的控制器中,您可以轻松区分这两者: -
$this->Product->function(); // Model method
$this->Products->function(); // Component method
看起来像Cake的命名约定控制器是复数的,将它扩展到组件是有意义的。
答案 1 :(得分:0)
从集合对象中调用组件。
$this->Color->find(); // Model
$this->Component->Color->method(); // Component
当我的模型和组件都命名时,我遇到了这个问题 “帐户”。模型被加载后我认为它会被覆盖。
但是,我不确定Component的功能是否正常,因为我从未尝试过 它。它确实适用于行为,因此值得一试。