I have been trying to debug an issue I am facing for over 3 hours and
was wondering if someone could give me some pointers.

I have a person.php model which has the following hasMany associations

var $hasMany = array(
  'OnlineAddress' => array(
    'foreignKey'=>'parent_id',
    'conditions'=>array('OnlineAddress.parent_model'=>'Person')
  ),
  'PostalAddress' => array(
    'foreignKey'=>'parent_id',
    'conditions'=>array('PostalAddress.parent_model'=>'Person')
  ),
  'TelephonyNumber' => array(
    'foreignKey'=>'parent_id',
    'conditions'=>array('TelephonyNumber.parent_model'=>'Person')
  )
);

In my 'people_controller.php' I have a view action, showhn below, with
a find() using contain

function view($id) {
  $this->data = $this->Person->find('first', array(
    'conditions'=>array('Person.id'=>$id),
    'contain'=>array(
      'Title',
      'Gender',
      'User'=>array('UserGroup'),
      'OnlineAddress' => array(
        'conditions' => array('OnlineAddress.parent_model'=>'Person',
'OnlineAddress.type_id'=>54)
      ),
      'PostalAddress',
      'TelephonyNumber' => array(
        'conditions' => array
('TelephonyNumber.parent_model'=>'Person',
'TelephonyNumber.type_id'=>51)
      )
    )
  ));
  echo debug($this->data);
}

When I access /People/view/3, which I know has a matching each for
OnlineAddress and TelephonyNumber it only returns data for
OnlineAddress ... it doesn't even return empty arrays for
PostalAddress and TelephonyNumber.

The strangest thing is if I save person.php to test.php and
people_controller.php to tests_controller.php (setting the test model
to $useTable='person' and changing the Person references to Test etc.)
and access /tests/view/3 it returns the expected: 1 record for
OnlineAddress, empty array for PostalAddress and 1 record for
TelephonyNumber.

I have had a dig through conainable.php and it seems to be doing it's
job, seeing the correct associations etc, I am now going to have a dig
through find which I assume is where the various finds get ran and the
arrays merged to produce the final result array.

Anyone else had similar issue?



--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to 
[email protected]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to