添加新列后,cakephp 3 将数据保存到数据库不起作用
cakephp 3 save data to database dont work after adding new column
嘿,我想用 cakephp 3.8 将数据保存到我的数据库中。一切正常,但我添加了一个新字段 "created_by" 并在模型文件夹中对其进行了更改。
这是我的RequestTable.php
public function validationDefault(Validator $validator){
.... (more, but not important)
$validator
->scalar('created_by')
->maxLength('created_by', 100)
->allowEmptyString('created_by');
return $validator;
}
我的实体文件"Request.php"
在顶部
* @property string|null $created_by
和
protected $_accessible = [
... (more)
'created_by' => true,
];
我要保存数据的代码:
$request = $this->Requests->newEntity();
$session = $this->getRequest()->getSession();
if(!empty($session->read('Auth.User.username'))){
$this->request->data['Requests']['created_by'] = $session->read('Auth.User.username');
}
$request = $this->Requests->patchEntity($request, $this->request->getData('Requests'));
if ($result = $this->Requests->save($request)) {
...
}
在空支票上它进入子句。在 patchEntity 之后,结果是正确的数据。存档里也一样。
table 中的列看起来像
created_by
varchar(100) 默认 NULL
不知道为什么不保存数据。如果有人对代码有更多疑问,请询问:)
没有错误信息。很难确定缺陷在哪里。您可能会考虑的一件事是检查数据库是否正忙于处理另一个进程。如果有洪水请求使您的请求被锁定。
我不知道为什么,但如果我创建一个具有相同模式的新数据库,它就可以工作。谢谢大家的帮助:)
嘿,我想用 cakephp 3.8 将数据保存到我的数据库中。一切正常,但我添加了一个新字段 "created_by" 并在模型文件夹中对其进行了更改。
这是我的RequestTable.php
public function validationDefault(Validator $validator){
.... (more, but not important)
$validator
->scalar('created_by')
->maxLength('created_by', 100)
->allowEmptyString('created_by');
return $validator;
}
我的实体文件"Request.php"
在顶部
* @property string|null $created_by
和
protected $_accessible = [
... (more)
'created_by' => true,
];
我要保存数据的代码:
$request = $this->Requests->newEntity();
$session = $this->getRequest()->getSession();
if(!empty($session->read('Auth.User.username'))){
$this->request->data['Requests']['created_by'] = $session->read('Auth.User.username');
}
$request = $this->Requests->patchEntity($request, $this->request->getData('Requests'));
if ($result = $this->Requests->save($request)) {
...
}
在空支票上它进入子句。在 patchEntity 之后,结果是正确的数据。存档里也一样。
table 中的列看起来像
created_by
varchar(100) 默认 NULL
不知道为什么不保存数据。如果有人对代码有更多疑问,请询问:)
没有错误信息。很难确定缺陷在哪里。您可能会考虑的一件事是检查数据库是否正忙于处理另一个进程。如果有洪水请求使您的请求被锁定。
我不知道为什么,但如果我创建一个具有相同模式的新数据库,它就可以工作。谢谢大家的帮助:)