【问题标题】:Yii Criteria->with without relation or without 'on'Yii Criteria-> 有无关系或无 'on'
【发布时间】:2015-07-28 13:05:36
【问题描述】:

如何在没有“开启”或没有“默认关系”的情况下创建criteria->with() 在查询中?

select *
from status kk 
inner join user tt 
left join userstatus ii on kk.status_id = ii.status_id 
    and ii.user_id = tt.user_id

我想将它用于CGridView 在 YII 中搜索 dataProvider

或者有没有其他方法可以让 diapakai 克服这个问题?

【问题讨论】:

    标签: join yii criteria cgridview cactivedataprovider


    【解决方案1】:

    CDbCriteria::with 要求您定义关系。如果您想手动连接表,该类还允许您使用连接属性来做到这一点

    http://www.yiiframework.com/doc/api/1.1/CDbCriteria#join-detail

    【讨论】:

      【解决方案2】:

      您可以在模型中定义relations,而不是在搜索方法中使用它。 例如

      public function relations() {
              return array(
                  'user' => array(self::BELONGS_TO, 'Users', 'user_id'),
              );
          }
      

      在搜索方法中:

      public function search() {        
              $criteria = new CDbCriteria;
              $criteria->with = array('user');
              ......
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2015-12-01
        • 1970-01-01
        • 1970-01-01
        • 2011-05-02
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多