我參考了http://agiletoolkit.org/codepad/newsletter的2步通訊示例。我將這個例子修改爲一個4步的過程。下面的頁面類是第1步,它可以插入新記錄並獲取新記錄ID。問題是我不想在數據庫中插入這條記錄直到最後一步。我不知道如何在不使用save()函數的情況下檢索此ID。任何想法都會有所幫助。atk4.2表單提交 - 如何在插入以傳入參數之前獲取新記錄ID
class page_Ssp_Step1 extends Page {
function init(){
parent::init();
$p=$this;
$m=$p->add(Model_Publishers);
$form=$p->add('Form');
$form->setModel($m);
$form->addSubmit();
if($form->isSubmitted()){
$m->save();//inserts new record into db.
$new_id=$m->get('id');//gets id of new record
$this->api->memorize('new_id',$new_id);//carries id across pages
$this->js()->atk4_load($this->api->url('./Step2'))->execute();
}
}
}
感謝Trevor,爲了快速響應。我對交易方式感興趣。我會研究它併發布任何有助於他人嘗試學習這個偉大的框架。再次感謝 – 2012-07-29 03:24:45
爲了使它工作,您需要將數據臨時保存到會話中。看看:http://agiletoolkit.org/codepad/nosql存儲會話中的數據。你可能會覺得這很有幫助。 – romaninsh 2012-07-29 04:38:37