Php 用户如何在数据库中插入主键
我在cakephp3工作。在bakery之后,例如users表,AddAction,在我的项目中,id(primarykey)应该由cake不向用户显示id(primarykey)的用户填写。我使用了Php 用户如何在数据库中插入主键,php,cakephp,primary-key,Php,Cakephp,Primary Key,我在cakephp3工作。在bakery之后,例如users表,AddAction,在我的项目中,id(primarykey)应该由cake不向用户显示id(primarykey)的用户填写。我使用了echo$this->Form->input('id',['type'=>'number'])但id未插入数据库。 如何按用户添加primarykey 添加.ctp <?= $this->Form->create($user) ?> <fieldset>
echo$this->Form->input('id',['type'=>'number'])代码>但id未插入数据库。
如何按用户添加primarykey
添加.ctp
<?= $this->Form->create($user) ?>
<fieldset>
<?php
echo $this->Form->input('id',['type' => 'number']);
echo $this->Form->input('name');
echo $this->Form->input('password');
?>
</fieldset>
<?= $this->Form->button(__('Submit')) ?>
<?= $this->Form->end() ?>
将id设置为数据库中的自动增量值。id必须由用户填写,因此不应为自动增量。如您所愿。但这听起来是个坏主意。。。如果$\u可访问变量中没有id=>false,那么可以查看您的实体?或者,尝试如下设置?:将id设置为数据库中的自动增量值。id必须由用户填写,因此不应为自动增量。如您所愿。但这听起来是个坏主意。。。如果$\u可访问变量中没有id=>false,那么可以查看您的实体?或者,尝试将其设置为这样?:
public function add() {
$user = $this->Users->newEntity();
if ($this->request->is('post')) {
$user = $this->Users->patchEntity($user, $this->request->data);
if ($this->Users->save($user)) {
$this->Flash->success(__('The user has been saved.'));
return $this->redirect(['action' => 'index']);
} else {
$this->Flash->error(__('The user could not be saved. Please, try again.'));
}
}
$roles = $this->Users->Roles->find('list', ['limit' => 200]);
$dormitories = $this->Users->Dormitories->find('list', ['limit' => 200]);
$this->set(compact('user', 'roles', 'dormitories'));
$this->set('_serialize', ['user']);
}