Php 用户如何在数据库中插入主键

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>

我在cakephp3工作。在bakery之后,例如users表,AddAction,在我的项目中,id(primarykey)应该由cake不向用户显示id(primarykey)的用户填写。我使用了
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']);
}