【发布时间】:2013-11-29 12:33:41
【问题描述】:
我将加入 page_content 具有相同的表,之后两者都有名为 sef_url 的列
以下代码返回错误。
是否有可能在CDbCriteria->select 中使用 AS 'alias_name'
$criteria=new CDbCriteria;
$criteria->alias = 'p';
$criteria->select = array('p.sef_url, p.date_last_modified, pc.sef_url AS parent_sef_url');
$criteria->join = 'LEFT JOIN page_content pc ON p.parent_pageid = pc.pageid';
$criteria->condition = 'p.published=:published AND p.sitemap_index=:sitemap_index';
$criteria->params = array(':published'=>1,':sitemap_index'=>0);
$result_arr = parent::model()->findAll($criteria);
echo '<pre>';
print_r($result_arr);
foreach($result_arr as $row) {
echo $row['parent_sef_url'];
}
【问题讨论】:
-
你得到什么样的错误?尝试在 page_content 模型中定义 public $parent_sef_url。我猜它类似于yiiframework.com/forum/index.php/topic/…
-
我的错误是,这是一个无效的代码
$criteria->select=array(..., pc.sef_url AS parent_sef_url');但是我需要一种方法来唯一标识这两个sef_url列