Объекты данных Laravel 5 через жизненный цикл

Существующий поток управления, когда я регистрирую нового пользователя в моем приложении Laravel 5, обрабатывает жизненный цикл запроса:

  • RegisterRequest вызывает валидатор для прохождения после проверки>
  • (RegisterRequest obj) MyAuthController>
  • рассылки (пользователь obj) RegisterUserCommand>
  • сопоставляет поля с RegisterUserCommand объект>
  • обработчик вызван на (RegisterUserCommand obj) RegisterUserCommandHandler>
  • создает нового пользователя, создавая пользователь obj>
  • потом звоню $ User-> Save ()
  • который сохраняет его в базу данных

Я делаю это правильно? Правильно ли передавать данные таким образом?
Пользовательская модель вызывается и отображается дважды, это хорошая практика?

Спецификация: Laravel Framework v5.0.28 с MySQL 5.6

0

Решение

Я не уверен, что вы имеете в виду, когда говорите

maps fields to RegisterUserCommand object >

Однако вот как примерно должен быть жизненный цикл

  1. Routes.php отправляет маршрут к UserController.php
  2. Метод postRegisterUser () вызывается
  3. Создан новый объект модели User
  4. Все свойства назначены экземпляру нового объекта User.
    атрибутов.
  5. Метод save () объекта User модели вызывается и
    база данных обновлена
0

Другие решения

Есть два способа сохранить или обработать любой запрос

  1. синхронный
  2. Асинхронный

Когда вы выполняете что-то синхронно, вы ждете, пока оно завершится, прежде чем перейти к другой задаче. Когда вы выполняете что-то асинхронно, вы можете перейти к другой задаче до ее завершения.

Я думаю, что из вашего примера вы пытаетесь сохранить данные в асинхронном режиме. Вы также можете использовать laravel Queue, чтобы сохранить пользователя в фоновом режиме. Это сэкономит время отклика.

0