Заміна дії при створені запису

 Є чимало випадків, коли потрібно зробити багато функціоналу на створенні запису:

- додати складні перевірки

- заповнити поля, які потім не можуть змінюватись

- створити додаткові об'єкти складної структури

- униктуни рекурсивного створення

- нестандартна логіка створеня запису

А тепер давайте ускладнимо задачу: логіка має працювати лише при створені запису з інтерфейсу, а при створені кодом працює стандартна логіка.

<tree create="false">

Можна просто заборонити створювати запис через інтерфейс та викликати візард через окремий пункт меню і викликати кастомний візард.

Тут все непогано, окрім того, що користувач тепер має знати про цей пункт меню, а не використовувати кнопку, до якої звик.

Для додавання такої функціональності використовуємо модуль crnd_web_on_create_action

<tree class="on-create-action-name-my_module.my_custom_wizard_act_window">

Тобото після префіксу on-create-action-name- вказуєемо повний зовнішній ID дії, яку ми хочемо викликати. Причому це може бути взагалі будь-яка дія, прив'язана до будь-якої моделі.

Важливо, не забути поставити модуль в залежності, не переплутати префікс та вказати саме повний зовнішній ID дії.



Заміна дії при створені запису
KitWorks, Volodymyr Karabanov 20 жовтня 2022 р.
Поділитися цією публікацією
Теги
Архів