Мне любопытно, если получение результата действия является правильным подходом, и если это так, то как это сделать?
Например, допустим, у меня есть страница с формой для создания сущностей после успешной сущностисоздание Я хотел бы перенаправить пользователя в подробный вид объекта, в противном случае (при ошибке) обновить форму сообщениями об ошибках.Я хотел бы выполнить это без смешения прикладных слоев (например, чтобы не перенаправлять пользователя в эпик / эффект после успеха).
У меня есть несколько подходов к этой проблеме:
(наблюдаемый шаблон) отправляет «триггерное» действие (entity_add
), затем отправляет успешное (entity_add_success
) или неудачное (entity_add_failure
) действие где-нибудь в моем эпосе / эффекте, ожидает сбоя илиУспешное действие и выполнение действия - у этого подхода есть заметный недостаток: в то же время могут быть созданы другие объекты, и как отличить действия объектов при сбое / успехе в этом случае?
(шаблон обратного вызова) отправляет триггерное действие с дополнительным параметром обратного вызова, который должен вызываться при определении результата действия, этот подход также имеет недостаток (хотя и не такой большой, как предыдущий): возможность создания ада обратного вызова.
(схема обслуживания) в этом случае отказаться от использования потока, использовать службы напрямую, недостаток проекта: смешивание прикладных слоев
Буду рад услышать любые идеи.