[closed]Column not found: 1054 Unknown column 'user.created' in 'order clause'

Yii sceleton app на "продакшн" сервере при исполнении вот тут




$criteria = new CDbCriteria;

		

$sort = new CSort('user');

$sort->attributes = array(

'user.username'=>'username',

'user.group_id'=>'group_id',

'user.email'=>'email',

'user.created'=>'created',

'user.email_confirmed'=>'email_confirmed',

);


$sort->defaultOrder = 'user.created DESC';//<<<<<<<<<

$sort->applyOrder($criteria);

//$criteria->select='COUNT(post.id) AS NumComments';

$users=User::model()->with('group', 'num_posts')->findAll($criteria);



[sql]SELECT t.id AS t0_c0,

     `t`.`username`        AS `t0_c1`,


     `t`.`password`        AS `t0_c2`,


     `t`.`email`           AS `t0_c3`,


     `t`.`email_visible`   AS `t0_c4`,


     `t`.`notify_comments` AS `t0_c5`,


     `t`.`notify_messages` AS `t0_c6`,


     `t`.`about`           AS `t0_c7`,


     `t`.`aboutparsed`     AS `t0_c8`,


     `t`.`group_id`        AS `t0_c9`,


     `t`.`email_confirmed` AS `t0_c10`,


     `t`.`created`         AS `t0_c11`,


     `t`.`modified`        AS `t0_c12`,


     `group`.`id`          AS `t1_c0`,


     `group`.`name`        AS `t1_c1`,


     `group`.`created`     AS `t1_c2`,


     `group`.`modified`    AS `t1_c3`

FROM user t

     LEFT OUTER JOIN `group` `group`


       ON (`t`.`group_id` = `group`.`id`)

ORDER BY user.created DESC #//<<<<<<<<<

LIMIT 25[/sql]

Останавливается с ошибкой


SQLSTATE[42S22]: Column not found: 1054 Unknown column 'user.created' in 'order clause'

В то врямя как на локалхосте (вин+wamp server) все работает.

В чем может быть проблема?

Судя по префиксу ‘t’ вы используете ночную сборку, а не 1.1rc. Уберите из кода:




$sort->attributes = array(

'user.username'=>'username',

'user.group_id'=>'group_id',

'user.email'=>'email',

'user.created'=>'created',

'user.email_confirmed'=>'email_confirmed',

);



Строчку




$sort->defaultOrder = 'user.created DESC';



замените на




$sort->defaultOrder = 't.created DESC';



и все должно работать :)

Это да. Отсюда 2 вопроса:

  1. В 1.1rc будет "без t?"

  2. стоит ли откатиться на rc или как-то можно избежать подобного поведения yii под виндами и линуксом? т.е. чтобы было либо только ‘user’(предпочтительнее), либо только ‘t’.

upd.

откатился на yii 1.1rc.

t исчезла. но:

[sql]

SELECT post.title,

     `post`.`content`

FROM post

WHERE post.featured = 1

ORDER BY post.created DESC

LIMIT 1

[/sql]

на Dev работает, а на Prod выдает

вопрос снят