Ruby on Rails中如何观察并获取flash[:notice]消息?

2026-04-11 19:582阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计277个文字,预计阅读时间需要2分钟。

Ruby on Rails中如何观察并获取flash[:notice]消息?

我正在尝试向用户发送flash消息和欢迎通知。如果这是他们的第一次评论,基本流程如下:

rubyclass CommentObserver 我正在尝试向用户发送flash消息和欢迎通知,如果这是他们的第一次评论;基本上,这样的事情:

class CommentObserver < ActiveRecord::Observer def after_save(comment) if comment.user.new? Mailer.deliver_welcome_package(comment) flash[:notice] = "Welcome! We just delivered a welcome package to your email" end end end

我不确定在用户创建第一条评论后我应该如何为用户显示该Flash消息.我应该将闪存消息放入控制器(附加“if comment.user.new?”)还是有办法更有效地显示闪存消息?

将Flash消息放在方法中对我来说似乎很好.

我的application_helper文件中通常有一个帮助方法来检查flash和diplay.

Ruby on Rails中如何观察并获取flash[:notice]消息?

def show_flash [:notice, :error, :warning].collect do |key| content_tag(:div, flash[key], :id => key, :class => "flash flash_#{key}") unless flash[key].blank? end.join end

我有三种类型的消息,通知,警告和错误,这检查是否有任何设置,如果是,它打印出来,如果没有,那么什么都没有打印.

在我的布局中我然后..

<% show_flash %>

本文共计277个文字,预计阅读时间需要2分钟。

Ruby on Rails中如何观察并获取flash[:notice]消息?

我正在尝试向用户发送flash消息和欢迎通知。如果这是他们的第一次评论,基本流程如下:

rubyclass CommentObserver 我正在尝试向用户发送flash消息和欢迎通知,如果这是他们的第一次评论;基本上,这样的事情:

class CommentObserver < ActiveRecord::Observer def after_save(comment) if comment.user.new? Mailer.deliver_welcome_package(comment) flash[:notice] = "Welcome! We just delivered a welcome package to your email" end end end

我不确定在用户创建第一条评论后我应该如何为用户显示该Flash消息.我应该将闪存消息放入控制器(附加“if comment.user.new?”)还是有办法更有效地显示闪存消息?

将Flash消息放在方法中对我来说似乎很好.

我的application_helper文件中通常有一个帮助方法来检查flash和diplay.

Ruby on Rails中如何观察并获取flash[:notice]消息?

def show_flash [:notice, :error, :warning].collect do |key| content_tag(:div, flash[key], :id => key, :class => "flash flash_#{key}") unless flash[key].blank? end.join end

我有三种类型的消息,通知,警告和错误,这检查是否有任何设置,如果是,它打印出来,如果没有,那么什么都没有打印.

在我的布局中我然后..

<% show_flash %>