小编bwe*_*ver的帖子

如何在Yii中指定过滤器中的表名?

有两个表attendee,和group.都有一个gender领域.每位与会者被分配到1个组.我已经CGridView成功显示了与会者的数量,但是当我添加代码来过滤性别时,我收到以下错误.要计算组中与会者的数量,我手动执行联接; 但是联接使得"性别"字段模糊不清.有没有办法在过滤器中指定它应该使用't'或基表?

当我加载视图时,它正常运行; 当我点击排序时gender,它给了我这样的信息:

错误信息

>     Error 500: <h1>CDbException</h1>
>     <p>CDbCommand failed to execute the SQL statement: SQLSTATE[23000]: Integrity constraint violation: 1052 Column 'gender'
> in where clause is ambiguous. The SQL statement executed was: SELECT
> COUNT(*) FROM (SELECT t.*, IFNULL( count(tbl_attendee.id), 0) as
> attendeeCount FROM `tbl_group` `t` LEFT JOIN tbl_attendee ON
> tbl_attendee.group_id = t.id WHERE gender LIKE :ycp0 GROUP BY t.id) sq
> (/Applications/MAMP/htdocs/yiiroot/framework/db/CDbCommand.php:516)</p><pre>#0
> /Applications/MAMP/htdocs/yiiroot/framework/db/CDbCommand.php(411): …
Run Code Online (Sandbox Code Playgroud)

php mysql yii

3
推荐指数
1
解决办法
3078
查看次数

标签 统计

mysql ×1

php ×1

yii ×1