Cakephp показывает, где 1=1

Здравствуйте, я создаю простой блог-сайт, здесь просматривайте блог на целевой странице, но если пользователь выбирает любую категорию, блог только в этой категории указан. Моя проблема заключается в том, что когда пользователь выбирает категорию на правой боковой панели, он возвращает все записи таблицы. Когда я печатаю запрос, он возвращает:

array(
    'log' => array(
        (int) 0 => array(
            'query' => 'SELECT `Category`.`category_id`, `Category`.`name` FROM `cakeBlog`.`categories` AS `Category`   WHERE 1 = 1',
            'params' => array(),
            'affected' => (int) 13,
            'numRows' => (int) 13,
            'took' => (float) 0
        ),
        (int) 1 => array(
            'query' => 'SELECT `Post`.`id`, `Post`.`category_id`, `Post`.`title`, `Post`.`body`, `Post`.`created`, `Post`.`modified`, `Post`.`user_id` FROM `cakeBlog`.`posts` AS `Post`   WHERE 1 = 1    LIMIT 20',
            'params' => array(),
            'affected' => (int) 13,
            'numRows' => (int) 13,
            'took' => (float) 0
        )
    ),
    'count' => (int) 2,
    'time' => (float) 0
)

Вот мой файл контроллера PostsController.php

В функции индекса я проверю, существует ли идентификатор категории или нет?

Пожалуйста, помогите мне... Спасибо


person Rahul Saxena    schedule 21.05.2015    source источник
comment
Не понятно, что вы просите.   -  person Sougata Bose    schedule 21.05.2015
comment
Мой вопрос: почему запрос показывает, где 1 = 1, как показано выше?   -  person Rahul Saxena    schedule 21.05.2015
comment
возможный дубликат Почему кто-то использовать WHERE 1=1 AND ‹условия› в предложении SQL?   -  person drmonkeyninja    schedule 21.05.2015


Ответы (1)


Используйте следующий блок, где вы хотите получить категории

if(is_null($categoryId)) {
    $this->Paginator->setting = array(
        'limit' =>'10',
        'order' => array('Post.id' =>'Desc')
        /*'conditions' => array(
            'Post.user_id' => AuthComponent::user(id)
        )*/
    );
    $arrPosts = $this->Paginator->paginate('Post');
    $this->set('posts', $arrPosts);
} else {
    $condition = array('Post.category_id' => $categoryId,'limit' =>'10');
    $da = $this->Paginator->setting = array(
        'conditions' => $condition      
        /*'conditions' => array(
        'Post.user_id' => AuthComponent::user(id)
        )*/
    );

    $arrPosts = $this->Paginator->paginate('Post');
    $log = $this->Post->getDataSource()->getLog(false, false); debug($log);
    $this->set('posts', $arrPosts);
}
person Supravat Mondal    schedule 21.05.2015