保存新的1:n关系

时间:2012-03-29 23:28:48

标签: php lithium

我有一个记录标题,其中包含 RecordHeader 的模型 RecordHeader(id PRIMARY KEY,entryDate DATETIME,fullName TEXT)

我有一个 RecordDetails 模型的记录详细信息 RecordDetails(id PRIMARY KEY,headerID FOREIGN KEY,answer TEXT)

我的RecordHeader定义了一个关系:

public $hasMany = array('RecordDetails' => array(
    'from' => 'RecordHeaders',
    'to' => 'RecordDetails',
    'key' => array('id' => 'headerID'),
    'fieldName' => 'details'
));

我保存一个带有“id”隐藏字段,“headerID”隐藏字段,带有一些任意名称的“fullName”文本字段(“xyz789”)和一个“answer”文本字段的视图,我放入一些任意数据(“abc123”)。

我的控制器会删除id和headerID(如果它为空),它将在一系列新问题的开头填写entryDate

$record = RecordHeaders::create($this->request->data);
$record->save();

我在RecordHeaders中有数据,但在RecordDetails中没有任何数据 RecordHeader(1,“2012-03-30 12:40”,“xyz789”)
RecordDetails表是空的

当我在RecordHeaders :: create()上检查它时,请求确实包含“abc123”的“答案”

我做错了什么,或者如果RecordHeader已经在数据库中,我可以只保存RecordDetails吗?我在RecordDetails对象上调用save?

0 个答案:

没有答案