Я отправил форму на мой взгляд, которая будет обработана в контроллере. Обычно происходит то, что контроллер сохраняет изменения, выполняя это:
if ($this->Requests->save($request)) {
// the request have been saved.
}
Теперь я создал еще один запрос на вставку, чтобы следить за действиями редактора с помощью оператора afterSave () следующим образом:
public function afterSave()
{
// here I need the data submitted from $this->request->save($request));
// how can I do this to use the data in the query?
// insert query here.
}
Я хочу использовать afterSave (), потому что я хочу использовать его для всех изменений, внесенных в запросы, но я не могу найти способ доступа к опубликованным данным.
Документация говорит, что afterSave () содержит следующие параметры:
afterSave(Event $event, EntityInterface $entity, ArrayObject $options)
Нужно ли мне это, чтобы выполнить то, что я хочу? Если да, то как мне правильно их использовать? потому что я не могу получить отладочную информацию, чтобы увидеть, что в ней содержится действия сохранения.
Вопрос в следующем:
Как я могу получить доступ к данным, сохраненным с $this->Requests->save($request)
в инструкции beforeSave () или afterSave () использовать данные в другом запросе?
Как получить доступ к данным, сохраненным с помощью $ this-> Requests-> save ($ request) в операторе beforeSave () или afterSave (), чтобы использовать данные в другом запросе?
2-й аргумент обоих обратных вызовов — это данные объекта. Если вам не нужен весь запрос, вы можете получить все данные, которые были преобразованы маршаллером в сущность из 2-го аргумента $entity
, Проверьте документацию по методам:
Я не знаю в чем твоя проблема, но делаю debug($entity);
там покажут данные сущности. Если не что-то еще не так в вашем коде.
Просто используйте сущность для того, чтобы делать то, что вы хотите там.
Других решений пока нет …