是否可以通过表单提交保存数据
Is that possible to save data with form submission
控制器代码:
public function login()
{
$this->LoadModel('Users');
pr($this->data);
}
查看代码:
<?php echo
$this->Form->create('Post').
$this->Form->control('email').'<br>'.
$this->form->label('password').'<br>'.
$this->Form->password('password').'<br>'.
$this->Form->submit('log in').
$this->Form->end();
?>
我无法理解数据是提交给控制器而是从控制器读取数据。
我得到了用控制器保存的数据,但是要访问数据变量,即提交无法读取到控制器的表单数据。
要获取 post 数据,请使用调试
debug($this->request->getData());
看起来您需要所有 CRUD 代码。
因此,您可以在
下面创建您的用户 add.ctp 文件
位置:templates\Users\add.ctp
<?= $this->Form->create($user) ?>
<?php
echo $this->Form->control('username');
echo $this->Form->control('email');
echo $this->Form->control('password');
?>
<?= $this->Form->button(__('Submit')) ?>
<?= $this->Form->end() ?>
然后用户控制器看起来像
UsersController/add method look like
public function add()
{
$user = $this->Users->newEmptyEntity();
if ($this->request->is('post')) {
$user = $this->Users->patchEntity($user, $this->request->getData());
if ($this->Users->save($user)) {
$this->Flash->success(__('The user has been saved.'));
return $this->redirect(['action' => 'index']);
}
$this->Flash->error(__('The user could not be saved. Please, try again.'));
}
$this->set(compact('user'));
}
你还需要更多吗?
只需要在你的应用程序文件夹中给出一个简单的命令来生成你的 CRUD。
发出指令
bin/cake bake all users
假设,用户是你的数据库table名称。
然后你会得到添加,编辑,删除,查看。
can see this tutorial for see how to give cake bake command
控制器代码:
public function login()
{
$this->LoadModel('Users');
pr($this->data);
}
查看代码:
<?php echo
$this->Form->create('Post').
$this->Form->control('email').'<br>'.
$this->form->label('password').'<br>'.
$this->Form->password('password').'<br>'.
$this->Form->submit('log in').
$this->Form->end();
?>
我无法理解数据是提交给控制器而是从控制器读取数据。 我得到了用控制器保存的数据,但是要访问数据变量,即提交无法读取到控制器的表单数据。
要获取 post 数据,请使用调试
debug($this->request->getData());
看起来您需要所有 CRUD 代码。
因此,您可以在
下面创建您的用户 add.ctp 文件位置:templates\Users\add.ctp
<?= $this->Form->create($user) ?>
<?php
echo $this->Form->control('username');
echo $this->Form->control('email');
echo $this->Form->control('password');
?>
<?= $this->Form->button(__('Submit')) ?>
<?= $this->Form->end() ?>
然后用户控制器看起来像
UsersController/add method look like
public function add()
{
$user = $this->Users->newEmptyEntity();
if ($this->request->is('post')) {
$user = $this->Users->patchEntity($user, $this->request->getData());
if ($this->Users->save($user)) {
$this->Flash->success(__('The user has been saved.'));
return $this->redirect(['action' => 'index']);
}
$this->Flash->error(__('The user could not be saved. Please, try again.'));
}
$this->set(compact('user'));
}
你还需要更多吗? 只需要在你的应用程序文件夹中给出一个简单的命令来生成你的 CRUD。
发出指令
bin/cake bake all users
假设,用户是你的数据库table名称。 然后你会得到添加,编辑,删除,查看。 can see this tutorial for see how to give cake bake command