اشکال در ارتباط بین جداول و گرفتن فیلد های مرتبط

[right]سلام[/right]

[right]این ساختار دیتابیس این دو جدول به صورا مختصر[/right]


‘field’ table:

id pk


field_option table:

id pk

feild_id int(11)


[right]فیلد

feild_id

رو

index

کردم و یک

relation

ایجاد کردم برای تعریف کلید خارجیبه صورت زیر[/right]


ALTER TABLE  `field_option` ADD CONSTRAINT  `option_field` FOREIGN KEY (  `feild_id` ) REFERENCES  `agahi_fixed`.`field` (

`id`

) ON DELETE CASCADE ON UPDATE RESTRICT ;

[right]

و

relation

در مدل ها:[/right]

relation Field model:


return array(

  'fieldOption' => array(self::HAS_MANY, 'FieldOption', 'feild_id'),

);

relation FieldOption model:


return array(

    'feild' => array(self::BELONGS_TO, 'Field', 'feild_id'),

);

[right]در کنترولر[/right]


if(Field::model()->exists('cat_id = :catId', array(":catId"=>$_POST['catid']))){

            $criteria=new CDbCriteria;

            //$criteria->select='*';  

            $criteria->condition='cat_id=:catId';

            $criteria->params=array(':catId'=>$_POST['catid']);

            $criteria->with = 'fieldOption';

            $field=Field::model()->findAll($criteria);

            header('Content-type: application /json');

            $jsonRows=CJSON::encode($field);

            echo $jsonRows;

        }



[right]

خروجی میشه فیلد دوتا فیلدی که توی جدول

field

ذخیره شده.

[/right]

[right]

میخوام فیلد های مرتبط با اونا هم از جدولی که باهاش در ارتباطه هم بیاد[/right]

[right]خطا هم نمیده ها[/right]

[right]دوستان حرفه ایم جواب ما تازه کارا هم بدید[/right]

[right] ::) یک دنیا ممنون[/right]

[right]سلام

اینو امتحان کن:




$criteria->with = 'fieldOption';




[/right]

[right]با عرض تشکر

ولی این هست دیگه تو کدهام

از همین استفاده کردم :mellow:[/right]

[right]ببخشید منظورم این بود که توی آرایه بذاری

[/right]


$criteria->with = array('fieldOption');



[right]نه امتحان کرده بودم اینو

مشکل حل شد لینک جواب هم میذارم برا دوستام اگه خواستن استفاده کنن[/right]

لینک جواب

[right]بازم ممنون[/right]