Hey all -
I'm trying to create some fixture data for my unit tests in CakePHP (via SimpleTest) and I have no idea how to handle my foreign key relationships. Here's a sample of the fixture code:
<?php
class SpecialtyFixture extends CakeTestFixture {
var $name = "Specialty";
var $import = "Specialty";
var $records = array(
array(
'id' => '1',
'event_id' => '1',
'code' => 'endocrin-1',
'name' => 'Endocrinology'),
array(
'id' => '2',
'event_id' => '1',
'code' => 'ent-1',
'name' => 'Ear, Nose and Throat')
);
}
?>
So, as you can guess Specialty has a foreign key to event (my Event model looks like this):
<?php
class Event extends AppModel {
var $name = "Event";
var $primaryKey = "id";
var $hasMany = array(
'EventLocation' => array('className' => 'EventLocation'),
'Faculty' => array('className' => 'Faculty'),
'Agenda' => array('className' => 'Agenda'),
'Role' => array('className' => 'Role'),
'Specialty' => array('className' => 'Specialty'),
);
var $hasAndBelongsToMany = array('User');
}
?>
The error I'm getting is this:
Unexpected PHP error [<span style = "color:Red;text-align:left"><b>SQL Error:</b> 1054: Unknown column 'event_id' in 'field list'</span>] severity [E_USER_WARNING] in [/dev/trunk/cake/libs/model/datasources/dbo_source.php line 525]
/dev/trunk/app/tests/cases/models/event.test.php -> EventTestCase -> endCase
I'll admit my understanding of CakePHP fixture data is minimal (documentation is kinda scarce, and examples on the web all rehash somewhat trivial examples) so any ideas on what I can/should do?
TIA -