Ich versuche, einige Fixture-Daten für meine Komponententests in CakePHP (via SimpleTest) zu erstellen und habe keine Ahnung, wie ich mit meinen Fremdschlüsselbeziehungen umgehen soll. Hier ist ein Beispiel der Befestigung Code:Wie handhabe ich Fremdschlüsselbeziehungen in meinen Fixtures zum Komponententest mit SimpleTest in CakePHP?
<?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, wie Sie sich vorstellen können Specialty einen Fremdschlüssel Ereignis hat (mein Event-Modell sieht wie folgt aus):
<?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');
}
?>
Der Fehler Ich erhalte das ist:
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
ich werde mein Verständnis von CakePHP Fixturedaten ist minimal (Dokumentation irgendwie knapp ist, und Beispiele im Web alle etwas aufwärmen zugeben triviale Beispiele) also irgendwelche Ideen, was ich tun kann/sollte?
Oooh fantastisch! Das ist genau das, wonach ich gesucht habe (ich würde die Daten lieber in Fixtures extrahieren). Danke! – leo