App Controller的代码用于导航栏的功能。
AppController的
public function beforeFilter() {
parent::beforeFilter();
$this->RememberMe->restoreLoginFromCookie();
$this->set('server_root', Router::url('/'));
$this->loadModel('Recipe');
$this->set('recipes', $this->Recipe->find('all'));
一切正常,每个页面都会显示导航栏,并且所有页面中的每个导航栏都能正常运行 直到我添加一个下拉选项,需要填充" Recipe"值。
KitchenController
这是我用来填充下拉选择
的代码$this->set('recipes', $this->Recipe->find('all',array('fields'=>array('Recipe.description'))));
它填充了下拉列表,虽然不完全是我想要获得但稍微接近的值,但是它也会影响导航栏,导致一些错误,如未定义的变量,之前没有。它会以某种方式影响导航栏,它也使用Model" Recipe"。
问题1:如何隔离下拉选项以使其不会影响导航栏?控制器问题 问题2:如何调用数组中的特定字段?因为当前此代码
$this->set('recipes', $this->Recipe->find('all',array('fields'=>array('Recipe.description'))));
返回id,日期和描述,我只需要描述。
感谢任何帮助
答案 0 :(得分:3)
您似乎正在设置相同的View变量名称"食谱"当您想要使用具有两个不同输出的相同变量时,这是个问题。您必须将变量名称更改为:
nav_recipes或食谱
或对您的应用程序上下文准确的内容