Ошибка SQL 1064 в простой настройке cakePHP - PullRequest
0 голосов
/ 10 апреля 2011

Я использую самый простой контроллер и модель, как показано здесь:

http://book.cakephp.org/view/1341/Basic-Usage

Но когда я иду к www.mysite.com/categories код, который вызывает это:

<?php
class CategoriesController extends AppController {

    var $name = 'Categories';

    function index() {
        $this->data = $this->Category->generatetreelist(null, null, null, '&nbsp;&nbsp;&nbsp;');
        debug ($this->data); die;       
    }
}
?>

я получаю следующую ошибку:

Warning (512): SQL Error: 1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'recover' at line 1 [CORE/cake/libs/model/datasources/dbo_source.php, line 684]
Code | Context

            $out = null;
            if ($error) {
                trigger_error('<span style="color:Red;text-align:left"><b>' . __('SQL Error:', true) . "</b> {$this->error}</span>", E_USER_WARNING);

$sql    =   "recover"
$error  =   "1064: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'recover' at line 1"
$out    =   null

DboSource::showQuery() - CORE/cake/libs/model/datasources/dbo_source.php, line 684
DboSource::execute() - CORE/cake/libs/model/datasources/dbo_source.php, line 266
DboSource::fetchAll() - CORE/cake/libs/model/datasources/dbo_source.php, line 410
DboSource::query() - CORE/cake/libs/model/datasources/dbo_source.php, line 364
Model::call__() - CORE/cake/libs/model/model.php, line 502
Overloadable::__call() - CORE/cake/libs/overloadable_php5.php, line 50
AppModel::recover() - [internal], line ??
CategoriesController::index() - APP/controllers/categories_controller.php, line 7
Dispatcher::_invoke() - CORE/cake/dispatcher.php, line 204
Dispatcher::dispatch() - CORE/cake/dispatcher.php, line 171
[main] - APP/webroot/index.php, line 83

Query: recover

app/controllers/categories_controller.php (line 8)

Я совершенно сбит с толку, поскольку я просто скопировал текст из оригинального учебника по приготовлению тортов.

У меня есть: Контроллеры / categories_controller.php модели / category_model.php и код копировать вставить из учебника.

Любая помощь?

Ответы [ 2 ]

2 голосов
/ 12 апреля 2011

Проблема решена. Неверное название файла модели. Это было: category_model.php Должно было быть: category.php = (

0 голосов
/ 10 апреля 2011
  1. Вы создали модель категории?
  2. Я не уверен, но я верю, что вы должны сообщить контроллеру, какую модель вы намереваетесь использовать, указав:

    var$ name = 'Categories';var $ использует = массив ("Категория");

    индекс функции () {$ this-> data = $ this-> Category-> generatetreelist (null, null, null, '');отладка ($ this-> data);умереть;
    }

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...