Як Flash Messages реалізваний у фреймворку Sinatra?

У фреймворку Sinatra Flash Messages реалізовані за допомогою розширення (gem) під назвою sinatra-flash. Це дозволяє вам використовувати flash повідомлення в своєму додатку Sinatra так само, як у Ruby on Rails.

Ось як ви можете використовувати sinatra-flash:

  1. Додайте розширення sinatra-flash у вашому файлі Gemfile:
gem 'sinatra-flash'

  1. Встановіть гем:
bundle install
  1. Після цього, включіть розширення в вашому Sinatra додатку:
require 'sinatra'
require 'sinatra/flash'
  1. Ви можете встановити flash повідомлення в своєму коді:
post '/login' do
  # Перевірка користувача
  if user_authenticated?
    flash[:success] = "Ви успішно увійшли!"
    redirect '/dashboard'
  else
    flash[:error] = "Не вдалося увійти. Будь ласка, спробуйте ще раз."
    redirect '/login'
  end
end

  1. Відобразіть ці повідомлення в представленні:
<% if flash[:success] %>
  <div class="alert alert-success">
    <%= flash[:success] %>
  </div>
<% end %>

<% if flash[:error] %>
  <div class="alert alert-error">
    <%= flash[:error] %>
  </div>
<% end %>

Таким чином, ви можете використовувати flash повідомлення у вашому Sinatra додатку за допомогою розширення sinatra-flash .