Мы начинаем вторую часть моего проекта. И мы хотели бы сначала начать процесс миграции, прежде чем работать над второй половиной проекта. У меня есть некоторые опасения по поводу процесса миграции, и я хотел бы развеять свои сомнения.
В настоящее время в моем проекте мы использовали многие из этих функций, упомянутых ниже.
- Должны ли мы заменить все $this->Form->input['description'] на $this->Form->control['description']?
- Когда вы упомянули, что Response::download() станет Response::withDownload(). Вы имеете в виду, что я должен изменить $this->response->download($filename) на $this->response->WithDownload($filename)?
- У нас есть эта строка кода $this->primaryKey('id') в нашем Table.php, и вы упомянули, что она является частью устаревшего списка и заменена методами getX() и setX(). Что ты имеешь ввиду? Я надеюсь, что вы можете привести мне пример.
Приведенный ниже код находится в контроллере, и я заметил, что вы упоминаете гидрат() (теперь 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'). Раньше я назначал случайный идентификатор с приведенным ниже перед сохранением в таблицу.
$this->request->data['id'] = TableRegistry::get('Customers')->find('guid');
У вас есть предварительная дата выпуска CakePHP 4.0?