在 cakephp 2.3 中:
假设我有一个由controllerX
. 我开始填写数据,在某处有一个用于执行某些任务的按钮,该按钮将打开一个由controllerY
for生成的新表单(模态窗口) ModelY
。每当我完成第二张表格时,我都会丢失我在第一张表格中填写的所有内容。我尝试了几件事,包括重定向到$this->referrer()
,但都不起作用。
谢谢
更新 1) 我正在添加代码片段:注意:我正在使用 twitter bootstrap。下面的代码来自“违规”添加视图。在这个表单中,我想让用户添加一个新的组织。
<script type="text/javascript">
/****** helper functions *******/
function onClickAddOrgLink() {
$('#myModal').modal();
}
</script>
<?php
echo $this->Form->create();
echo $this->Form->input('number');
echo $this->Form->input('organization_id');
//Add new organization button
echo '<a id="addOrgLink" href="#myModal" role="button" class="btn" data-toggle="modal">Add new Org</a>';
$this->Js->get('#addOrgLink')->event('click', 'onClickAddOrgLink()');
echo $this->Form->input('remarks', array('type'=>'textarea','rows'=>'6'));
echo $this->Form->end(array('class'=>'btn btn-primary', 'div'=>false,'name'=>'submit', 'label' => 'add'));
?>
<!-- Modal -->
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
<h3 id="myModalLabel">adding a new org</h3>
</div>
<div class="modal-body">
<p>
<?php
echo $this->Form->create('Organization', array('controller'=>'organizations', 'action'=>'add'));
echo $this->Form->input('company_name', array('div'=>false));
echo $this->Form->input('address1', array('div'=>false));
echo ' <div class="modal-footer">
<button class="btn" data-dismiss="modal" aria-hidden="true">cancel</button> ';
echo $this->Form->end(array('class'=>'btn btn-primary', 'div'=>false, 'name'=>'submit', 'label' => 'ADD'));
echo '</div>';
?>
</p>
</div>
</div>
这是添加新的组织操作:
var $helpers=array('Session', 'Js', 'Html');
public function add() {
$this->autoRender=false;
$this->Organization->create();
$this->Organization->save($this->request->data);
$this->redirect($this->referer());
}