Cakephp在模型和视图之间调用函数
假设我有一个函数:Cakephp在模型和视图之间调用函数,php,cakephp,separation-of-concerns,Php,Cakephp,Separation Of Concerns,假设我有一个函数: function getCarName() { return array(1 => 'BMW', 2 => 'MERCEDEZ BENZ', 3 => 'RENAULT'); } 我将在模型和视图上使用此函数,我是否应该在AppHelper和汽车模型上创建两个相同的函数?实现这一点的正确方法是什么?让两个函数做同一件事通常是个坏主意,因为这违反了原则 相反,我会将该功能添加到您的汽车模型中,然后通过以下方式将数据从控制器传递到视图: $this-&g
function getCarName() {
return array(1 => 'BMW', 2 => 'MERCEDEZ BENZ', 3 => 'RENAULT');
}
我将在模型和视图上使用此函数,我是否应该在AppHelper和汽车模型上创建两个相同的函数?实现这一点的正确方法是什么?让两个函数做同一件事通常是个坏主意,因为这违反了原则 相反,我会将该功能添加到您的
汽车
模型中,然后通过以下方式将数据从控制器传递到视图:
$this->set('carNames', $this->Car->getCarNames());
然后,可以通过
$carNames
变量在视图中查看汽车名称。让两个函数执行相同的操作通常是个坏主意,因为这违反了原则
相反,我会将该功能添加到您的汽车
模型中,然后通过以下方式将数据从控制器传递到视图:
$this->set('carNames', $this->Car->getCarNames());
然后,可通过
$carNames
变量在视图中查看车辆名称。您希望保持干燥(不要重复)。因此,您的方法将不起作用。或者将其设置为常规模型方法,并使用控制器将其向下传递。或者使用与此方法类似的静态模型方法:-这里似乎有一些类似枚举的数组-您可能还希望在表单中使用这些数组。您希望保持其干燥(不要重复)。因此,您的方法将不起作用。或者将其设置为常规模型方法,并使用控制器将其向下传递。或者使用与此方法类似的静态模型方法:-这里似乎有一些类似枚举的数组-您可能还希望在表单中使用这些数组。