Rails 4 - Toaster-Benachrichtigungen statt Flash-Benachrichtigungen
Ich benutze diese Bibliothek, (https://github.com/CodeSeven/toastr) und ich versuche, meine Flash-Benachrichtigungen auf die von Toastr für mich bereitgestellte Javascript-Funktion zu übertragen. Wie rufe ich diese Funktion für jeden Fehler oder jede Benachrichtigung auf?
Dies ist eine der Methoden, die zum Erstellen einer Toaster-Benachrichtigung verwendet werden:
toastr.warning('This is a warning!')
Ich habe versucht, eine Methode im ApplicationController zu erstellen, um zu prüfen, ob ich diese Methode bei Standardfehlern von CanCan aufrufen kann. Ich habe verschiedene Versionen der Methode, von denen keine funktioniert hat.
def toast(type, text)
#if Logic here for various errors/notifications
respond_to do |format|
format.js { render action: "toastr.warning(#{text})", layout: false}
end
end
def toast(type, text)
#if Logic here for various errors/notifications
"toastr.warning(#{text})"
end
Und dann versuche ich, diese Methode im CanCan-Block zu verwenden:
rescue_from CanCan::AccessDenied do |exception|
toast :error, exception.message
redirect_to root_url
end
Ich würde davon ausgehen, dass dies möglich ist, bin mir aber nicht sicher, wie ich es umsetzen soll. Nicht viele versuchen dies, und es gibt wahrscheinlich einen Grund. Ich bin offen für Vorschläge, wie ich das tun soll, was ich versuche.
Hier ist eine Testanwendung, die die Toast-Benachrichtigungen implementiert:http://codeseven.github.io/toastr/demo.html