Php 使用Yii,有没有办法通过CDbCriteria将AS添加到查询中

Php 使用Yii,有没有办法通过CDbCriteria将AS添加到查询中,php,jquery,mysql,yii,fullcalendar,Php,Jquery,Mysql,Yii,Fullcalendar,这就是交易: 我已经为基本的活动管理设置了一个表格。这是在所有支持代码就绪的情况下完成的。我决定使用jquery日历,即通过JSON提要显示的完整日历。这也已经到位了,但问题出在这里 CActiveRecord返回的数据使用数据库中的键,例如event_id、event_title等。当我通过Yii的CJSON::encode()输出数据时,完整日历需要id、title等键。我不希望仅仅为了适应此日历而更改数据库或CRUD表单 如果我在编写sql,我只会使用AS(即,选择event_id AS

这就是交易:

我已经为基本的活动管理设置了一个表格。这是在所有支持代码就绪的情况下完成的。我决定使用jquery日历,即通过JSON提要显示的完整日历。这也已经到位了,但问题出在这里

CActiveRecord返回的数据使用数据库中的键,例如event_id、event_title等。当我通过Yii的CJSON::encode()输出数据时,完整日历需要id、title等键。我不希望仅仅为了适应此日历而更改数据库或CRUD表单

如果我在编写sql,我只会使用AS(即,选择event_id AS id)来促进这一更改,但是我在Yii中找不到这样做的方法。有什么建议吗?有没有办法在Yii中向查询添加AS语句


谢谢大家

您可以在
select
子句中设置别名:

$criteria->select = array(
    'id as user_id',
);

我仍然很想知道是否有一种方法可以解决查询中字段名的问题。我正在使用关系视图,并使用afterFind()处理数据。也就是说,我意识到了一个简单的解决方案,它不回答问题,但解决了我的问题。我只需要在JSON数据上用php str_替换来创建正确的键。