我的Cake版本:2.4.7
我试图允许用户使用CakePHP在home.ctp中注册帐户。我有一个名为users / add的视图,这是一个简单的用户注册表单。然后在页面(home.ctp)中呈现此视图的最佳方法是什么?
我的添加功能代码:
public function add() {
if ($this->request->is('post')) {
$this->User->create();
if ($this->User->save($this->request->data)) {
$this->Session->setFlash(__('The user has been saved.'));
return $this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('The user could not be saved. Please, try again.'));
}
}
}
我的观点代码:
<div class="users form">
<?php echo $this->Form->create('User'); ?>
<fieldset>
<legend><?php echo __('Add User'); ?></legend>
<?php
echo $this->Form->input('username');
echo $this->Form->input('password');
echo $this->Form->input('email');
//echo $this->Form->input('role');
?>
</fieldset>
<?php echo $this->Form->end(__('Submit')); ?>
</div>
<div class="actions">
<h3><?php echo __('Actions'); ?></h3>
<ul>
<li><?php echo $this->Html->link(__('List Users'), array('action' => 'index')); ?></li>
</ul>
</div>
根据我的发现,最好的方法可能是利用一个元素,但是我对Cake很新,不知道如何在元素中渲染视图。
编辑:我复制了我的users / add.ctp代码并将其粘贴到一个元素中,并且能够在主页上呈现此元素。我怎么能让这个表单与Users控制器交互,以便在提交表单时实际添加用户?