当我们开始我的项目的第二部分时。我们想先开始完成迁移过程,然后再进行项目的后半部分。我对迁移过程有一些担忧,并想消除我的疑虑。
目前,在我的项目中,我们使用了很多下面提到的这些功能
- 我们是否必须将所有 $this->Form->输入['description'] 替换为 $this->Form->控件['description']?
- 当您提到 Response::download() 将变为 Response::withDownload()。你的意思是我必须将 $this->response->download($filename) 更改为 $this->response->WithDownload($filename)?
- 我们在 Table.php 中有此代码行 $this->primaryKey('id') ,您提到它是已弃用列表的一部分,并已替换为 getX() 和 setX() 方法。你那是什么意思?我希望你能给我一个例子。
在控制器中可以找到以下代码,我注意到您提到了 hydrate()(现在是 enableHydration() / isHydrationEnabled())。下面我们需要做哪些改变?
$CustomersordersTable-> find() -> select(['order_id'=>'Customerorders.order_id']) -> where(['id IN' => $studentlist]) -> hydrate(false) -> toArray();
我也明白 $this->request->data['id'] 已被弃用,我们需要 $this->request->getData('id')。但是,当添加细节时,现在我们不能为这个 $this->request->getData('id') 分配一个随机的 id 值。在保存到表中之前,我曾经使用以下分配一个随机 id。
$this->request->data['id'] = TableRegistry::get('Customers')->find('guid');
您有 CakePHP 4.0 的暂定发布日期吗?