选择cakephp中的特定记录

时间:2014-03-11 17:23:41

标签: php mysql cakephp

我正在使用CakePHP 2.3。我的搜索查询存在问题:

$this->loadModel("names");
    $modelMerge = $this->names->bindModel(array
    (
        'belongsTo' => array
        (
            'origins' => array
            (
                'foreignKey' => false,
                'joins' => 'INNER',
                'conditions' => array
                (                                                                'names.Name LIKE' => '%'. $search . '%',
                )
            )

        )

    ));
    $this->set("names", $this->names->findAllByName('$search'));

结果为空 - find(' all')工作正常,但此代码存在问题。

2 个答案:

答案 0 :(得分:0)

请先阅读蛋糕文件。

模型不能是复数。您必须设置模型名称而不是名称。

$this->loadModel("Name");
$names = $this->Name->find('all', array( // 'all' or 'first'
          'conditions' => array(
                 'Name.name LIKE' => '%'. $search .'%'
          )
));

$this->set(compact("names"));

答案 1 :(得分:0)

对于特定记录,您需要通过primary_key找到它。所以如果pk是“id”

$names = $this->Name->find('all', array(
      'conditions' => array(
             'table.id' => '".$id."'
      ),
      'limit' => 1
));