работейки с Yii, има ли някакъв начин да добавите AS към заявка чрез CDbCriteria

така че това е сделката:

Подготвил съм маса за основно управление на събития. Това се прави с целия поддържащ код на място. Реших да използвам jquery календара, пълен календар за показване чрез JSON канал. Това също е на мястото си, но ето тук е проблемът.

Данните, върнати от CActiveRecord, използват ключовете, каквито са в базата данни, например event_id, event_title и т.н. Когато извеждам данните чрез CJSON::encode() на Yii, Full Calendar се нуждае от ключове като id, title и т.н. Предпочитам да не променям базата данни или моите CRUD формуляри само за да се приспособя към този календар.

Ако пишех моя sql, просто щях да използвам AS (т.е. SELECT event_id AS id), за да улесня тази промяна, но не виждам начин да направя това в Yii. Някакви предположения? Има ли начин да добавите AS изрази към заявката в Yii?

Благодаря на всички


person Paul Sandel    schedule 15.05.2013    source източник
comment
Все още съм любопитен да знам дали има път към AS за имена на полета в заявката. Работя с релационния изглед и използвам afterFind() за работа с данните. Въпреки това разбрах лесно решение, което не отговаря на въпроса, но решава моя проблем. Всичко, от което се нуждая, е php str_replace на JSON данните за създаване на правилните ключове.   -  person Paul Sandel    schedule 16.05.2013


Отговори (1)


Можете да зададете псевдоним в клауза select:

$criteria->select = array(
    'id as user_id',
);
person msoa    schedule 16.05.2013