私は2つのテーブル(学生と従業員)を持っています
student(reg_no , s_name, dept, f_name) reg_no は主キーの employee(e_no,design,salary,reg_no) です。reg_no は外部キー参照の student(reg_no) です。
employee から e_no,design を、student テーブルから s_name,dept を表示したい。だから私の完全なcgridviewは
e_no, design,s_name,dept
employee/admin.php の私のコード
<?php $this->widget('zii.widgets.grid.CGridView', array(
'id'=>'employee-grid',
'dataProvider'=>$model->searchEmployees(),
//'filter'=>$model,
'columns'=>array(
'e_no',
'e_name',
'design',
'salary',
'reg_no',
array('name'=>'student.s_name', 'value'=>'$data->student->s_name'), // student name
'salary', // employee.salary
array(
'class'=>'CButtonColumn',
),
),
));
?>
searchEmployees() の model/employee.php の私のコード
public function searchEmployees()
{
$criteria=new CDbCriteria;
$criteria->alias = 'i';
$criteria->compare('e_no',$this->e_no);
$criteria->compare('e_name',$this->e_name,true);
$criteria->compare('design',$this->design,true);
$criteria->compare('salary',$this->salary);
$criteria->compare('reg_no',$this->reg_no);
$criteria->join= 'JOIN student d ON (i.reg_no=d.reg_no)';
return new CActiveDataProvider($this, array(
'criteria'=>$criteria,
'sort'=>array(
'defaultOrder'=>'reg_no ASC',
),
));
}
しかし、私はエラーに直面しています
プロパティ「Employee.studentname」が定義されていません。
エラーの解決方法 PLZ HELP.
ありがとう