2015-06-07 4 views
0

Я новичок в YII1. У меня три таблицы: Jd, jda и user. Связь с jd и jda являетсяСобирать данные из трех таблиц в yii1?

'jobDescription'=> array(self::HAS_MANY, 'JobDescriptionAssignment', /*array('id'=>'job_desc_id')*/'id'),  

и соотношение между jda и user является

'users' => array(self::BELONGS_TO, 'User', 'user_id'), 

Мои таблиц:

jd-> идентификатор, имя
jda-> идентификатор , jd_id, user_id
пользователь-> id, supervisor_id

supervisor_id получен из идентификатора пользователя. Теперь я хочу показать данные от jd модели тех пользователей, чей supervisor_id зарегистрирован в id.

+0

Ваш вопрос трудно понять, что вы просите за помощь? Настройка отношения, запрос активной записи и т. Д.? Ответ также меняется с версией yii - 1/2. –

+0

Теперь вы можете понять. –

ответ

1

посмотреть эту тему Yii Framework : Join table (or other SQL) in data provider?

public function search(){ 

    $criteria=new CDbCriteria; 

    $criteria->compare('id',$this->id); 
    $criteria->compare('status',$this->status,true); 
    $criteria->compare('createDate',$this->createDate,true); 
    $criteria->compare('updateDate',$this->updateDate,true); 
    $criteria->compare('remark',$this->remark,true); 
    $criteria->with = array('cateLang' => array(
     'condition' => 'cateLang.id = 1 OR cateLang.id = 2', 
     'order' => 'cateLang.id ASC' 
    )); 

    return new CActiveDataProvider($this, array(
     'criteria'=>$criteria, 
    )); 
} 

-

$this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'category-grid', 
    'dataProvider'=>$model->search(), 
    'filter'=>$model, 
    'columns'=>array(
     'id', 
     array(
      'name' => 'FrenchTitle' 
      'value' => '(isset($data->cateLang[0])) ? $data->cateLang[0]->name : "no Title"', 
     ), 
     array(
      'name' => 'EnglishTitle' 
      'value' => '(isset($data->cateLang[1])) ? $data->cateLang[1]->name : "no Title"', 
     ), 
     'createDate', 
     'updateDate', 
     'remark', 
     array(
      'class'=>'CButtonColumn', 
     ), 
    ), 
)); 
+0

ps: вы можете присоединиться к другим таблицам –

Смежные вопросы