0

我创建了一个具有文本字段(与 Facebook 相同的状态栏)的元素,我在主页/显示视图中进行了扩展。

元素代码:

<?php 
echo $this->Html->css('notes'); 
echo $this->Html->script(array('jquery','jquery.elastic','notes'));
?>
<div class="notescontainer">
<div class="share">Share:</div>
<div class="notes">Notes</div>
<div class="loading"></div>
<div class="img_top"></div>
<div class="text_status">

<?php 
echo $this->form->create('Note', array('action' => 'notes'));
echo $this->form->input('notes',array('class' => 'notesbar', 'label'=>'', 'placeholder' => 'Write down you notes ...'));
?>
</div>
<div class="button_outside_border" id="share">
<div class="button_inside_border">

<?php 
echo $this->form->submit('Share',array('alt' => 'Add', 'class' => 'sharebutton'));
echo $this->form->end();
?>
</div>
</div>
<div class="clear"></div>
<div class="load_status_out"></div>
</div>

我希望当用户共享状态时,它应该重新出现在显示/主页的同一页面上,为此我创建了一个控制器来检索用户输入的状态。

控制器:

<?php public function notes()
{
$this->set('allnotes', $this->Note->find('all'));
}?>

控制器视图:

<?php 

foreach($allnotes as $viewnotes):
{

    echo $viewnotes['Note']['notes']; 
    echo "<br>";
}
endforeach;
?>

现在我希望这个控制器视图显示在主页/显示视图上。有什么办法可以在那个元素中扩展它?我不想将它直接添加到我的主页/显示视图中,因为它已经完全加载。

4

1 回答 1

1

您可以使用requestAction()来完成此操作,但根据我的经验,如果您需要,它是错误的并且是设计失败的标志。或者,您可以将所有视图转换为可以以任意方式相互嵌入的元素。然后你可以在控制器中调用一些共享代码来填充所有需要的模型。

于 2012-10-07T09:51:23.517 回答