Структура обмена сообщениями для Silverstripe
-
28-10-2019 - |
Вопрос
Мне было интересно, есть ли стандартный способ выполнения сообщений на основе сеансов в Silverstripe.
Например, модуль может установить сообщение как The task has been processed
а затем перенаправить на другую страницу, и сообщение будет отображаться в маленьком поле на этой странице.
Например, Django Framework http://docs.djangoproject.com/en/dev/ref/contrib/messages/У Drupal есть http://api.drupal.org/api/drupal/includes-bootstrap.inc/function/drupal_set_message
Я погуглил это и не нашел модулей или встроенных функциональности, чтобы уловить это. Было бы хорошо, если бы все приложения, даже внешние, будут обращаться с сообщениями одинаково. Это просто то, чего не хватает в Silverstripe?
Решение
Вы можете сделать это с помощью Session :: AddToArray ($ Key, $ Value) (http://api.silverstripe.org/2.4/sapphire/control/session.html#methodaddtoarray) Затем Session :: Get ($ Key), чтобы получить значение.
Другие советы
Я сделал патч для реализации этой функции, так как она действительно должна быть в ядре.