I did class event extends AppModel { var $belongsTo = array( 'Category' => array( 'className' => 'Category', 'foreignKey' => 'category_id', 'conditions' => 'Event.category_id=Category.id', 'fields' => '', 'order' => '' ), 'Status'=>array( 'className' => 'Status', 'foreignKey' => 'category_id', 'conditions' => 'Event.category_id=Status.id', 'fields' => '', 'order' => '' ) } class EventsController extends AppController { function viewEvent() { $this->set('events',$this->Event->find('all')); } } view foreach($events as $event_arr) { echo $event_arr['Category']['category_name']; echo $event_arr['Status']['status_name']; } It is displaying all required but without match of category-id and status-id with events table That is like this event_id event_name category_name status_name 1 aaa xxx enabled 2 bbb yyy disabled 3 ccc zzz where the ans should be event_id event_name category_name status_name 1 aaa zzz enabled 2 bbb yyy disabled 3 ccc xxx enabled please help what should I do