×
Masterpro Nivo Slider (06 фев 2023)

Это форк Vinaora Nivo Slider, пришлось переименовать, в силу требования JED. Даже старую версию качать можно было только с варезных сайтов, нашпигованную троянами. Зачем оно такое, согласитесь.

Решено Flash-сообщение для формы Rails, работающей через AJAX

  • grease monkey
  • grease monkey аватар Автор темы
  • Не в сети
  • Осваиваюсь на форуме
  • Осваиваюсь на форуме
Подробнее
5 года 3 мес. назад #1 от grease monkey
Привет. Убедительная просьба научить ламера, как отобразить flash сообщение от интерактивной формы на Rails-сайте, которая работает на ajax...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
5 года 3 мес. назад - 5 года 3 мес. назад #2 от evgenij
Как вариант:

view:
<%= link_to "blablabla", users_path, remote: true %>

controller
class UsersController < ApplicationController
  def index
    # do some things here
    respond_to do |format|
      format.js { flash.now[:notice] = "Here is my flash notice" }
    end
  end
end

app/views/users/index.js.erb
$("#flash").html('<%= j render partial: "shared/notice_banner" %>');

app/views/layouts/application.html.erb
<div id="flash">
  <% if notice.present? %>
    <%= render partial: "shared/notice_banner" %>
  <% end %>
</div>


app/views/shared/_notice_banner.html.erb
<div data-alert class="alert-box">
  <%= notice %>
  <a href="#" class="close">&times;</a>
</div>

Без проблем работает. Источник: stackoverflow.com/questions/23967390/rai...lash-notice-via-ajax

Have a lot of fun!
Последнее редактирование: 5 года 3 мес. назад пользователем evgenij.
Спасибо сказали: grease monkey

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
5 года 3 мес. назад #3 от serge
Весьма рекомендую к прочтению эти диалоги: Rails 4 flash messages using Twitter Bootstrap(bootstrap-sass .

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
5 года 3 мес. назад #4 от evgenij

grease monkey пишет: как отобразить flash сообщение от интерактивной формы на Rails-сайте, которая работает на ajax...


Вообще, самое удобное это unobtrusive_flash . Рекомендую.

Have a lot of fun!
Спасибо сказали: grease monkey

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
5 года 3 мес. назад #5 от Aleksej

evgenij пишет: Вообще, самое удобное это unobtrusive_flash. Рекомендую.


Присоединяюсь к рекомендации, тем более что отлично работает и for Bootstrap projects, подробности по ссылке... демку можно заценить на страничке Twitter-posting блога .

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • grease monkey
  • grease monkey аватар Автор темы
  • Не в сети
  • Осваиваюсь на форуме
  • Осваиваюсь на форуме
Подробнее
5 года 3 мес. назад #6 от grease monkey
большое спасибо, все получилось

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
5 года 3 нед. назад #7 от serge

evgenij пишет: Вообще, самое удобное это unobtrusive_flash . Рекомендую.


Еще гем из этой же обоймы. Если кому надо.
Growlyflash
В отличие от unobtrusive_flash Леонида Швецова держит flash-сообщения не в cookies, а в заголовках HTTP:

With XHR requests it places flash hash to the X-Messages HTTP header or inline in javascript.


Весьма удобная и красивая штука, работать начинает сразу же из коробки. Пробуйте.

А я смогу! - А поглядим! - А я упрямый!

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
3 года 9 мес. назад - 3 года 9 мес. назад #8 от Aleksej

evgenij пишет: Вообще, самое удобное это unobtrusive_flash . Рекомендую.


Bootstrap 4 compatibility.:

lib/assets/javascripts/unobtrusive_flash_bootstrap.js
-    var $flash = $('<div class="alert alert-'+options.type+' fade in"><button type="button" class="close" data-dismiss="alert">&times;</button>'+message+'</div>');
+    var $flash = $('<div class="alert alert-'+options.type+' fade show"><button type="button" class="close" data-dismiss="alert">&times;</button>'+message+'</div>');

Source
Последнее редактирование: 3 года 9 мес. назад пользователем Aleksej.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
2 года 7 мес. назад #9 от Nguen

serge пишет: В отличие от unobtrusive_flash Леонида Швецова держит flash-сообщения не в cookies, а в заголовках HTTP.


Привет, зачем ставить gem когда совсем немного кода вполне решает эту технически несложную задачку? ;)

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Подробнее
2 года 7 мес. назад - 2 года 7 мес. назад #10 от serge

Nguen пишет: Привет, зачем ставить gem когда совсем немного кода вполне решает эту технически несложную задачку? ;)


Как бы не вопрос! B)

application_helper.rb
module ApplicationHelper
  def bootstrap_class_for_flash(flash_type)
    case flash_type
    when 'success'
      'alert-success'
    when 'error'
      'alert-danger'
    when 'warning'
      'alert-warning'
    when 'notice'
      'alert-info'
    else
      flash_type.to_s
    end
  end
end

_flash.html.erb
<div class="container">
  <% flash.each do |type, msg| %>
    <div class="alert <%= bootstrap_class_for_flash(type) %> alert-dismissable fade show">
      <%= msg %>
    </div>
  <% end %> 
</div>

view
<%= render partial: 'flash', flash: flash %>

А я смогу! - А поглядим! - А я упрямый!
Последнее редактирование: 2 года 7 мес. назад пользователем serge.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Работает на Kunena форум