尝试使用loadModel时CakePHP SQL错误

时间:2015-05-21 13:25:11

标签: mysql cakephp-2.0

我有两个控制器(Feeds& Items),在Items add视图中,我想要来自Feeds表的一些信息对用户可见。

因此,在项目控制器中我试图访问Feed模型,我遇到的所有内容都建议使用loadModel但是当我尝试加载Items添加视图时,我收到以下错误:

错误:SQLSTATE [42000]:语法错误或访问冲突:1064您的SQL语法出错;查看与您的MySQL服务器版本相对应的手册,以获得在''附近使用的正确语法。第1行

SQL查询:显示来自

请注意,这两个表之间没有关系设置。

Feed模型

App::uses('AppModel', 'Model');
class Item extends AppModel {}

项目模型

App::uses('Feed','Model');
class ItemsController extends DirectResponseAppController {

      function add() {       

        if ($this->request->is('post')) {

          $this->Item->create();
          if ($this->Item->save($this->request->data)) {

            $this->Session->setFlash(__('Your item has been saved.'));
            return $this->redirect(array('action' => 'index'));
          }
          $this->Session->setFlash(__('Unable to add your item.'));

        } else {

          $this->loadModel('Feed');
          $xxx = $this->Feed->find('all');

        }
      }

}

项目控制器

$xxx = $this->Feed->find('all');

任何帮助表示感谢。

**编辑** 经过一番挖掘,问题似乎与这一行有关:

Team currentTeam = m_teamDao.findByAttribute("name", teamName);

我只是不确定原因。

1 个答案:

答案 0 :(得分:1)

如果您的Feed位于插件(DirectResponse)中,则必须使用loadModel,如下所示:

$this->loadModel('DirectResponse.Feed');