首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Rails:一次添加多个flash[:notice]的简单方法

Rails:一次添加多个flash[:notice]的简单方法
EN

Stack Overflow用户
提问于 2010-03-15 16:37:28
回答 9查看 35.5K关注 0票数 44

我以为每次你做一次flash[:notice]="Message",它都会把它添加到数组中,然后在视图中显示出来,但下面的代码只是保留了最后一次闪光:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
flash[:notice] = "Message 1"
flash[:notice] = "Message 2"

现在我意识到这只是一个简单的散列和一个键(我认为:)),但有比下面更好的方法来进行多次刷新:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
flash[:notice] = "Message 1<br />"
flash[:notice] << "Message 2"
EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2010-03-15 16:43:04

flash消息实际上可以是您想要的任何内容,所以您可以这样做:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
flash[:notice] = ["Message 1"]
flash[:notice] << "Message 2"

然后在您的视图中,输出为

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<%= flash[:notice].join("<br>") %>

或者你喜欢的任何东西。

该技术是否比其他解决方案更容易取决于您自己的喜好。

票数 50
EN

Stack Overflow用户

发布于 2010-03-16 08:22:29

我通常在我的ApplicationHelper中添加这样的方法:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def flash_message(type, text)
    flash[type] ||= []
    flash[type] << text
end

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
def render_flash
  rendered = []
  flash.each do |type, messages|
    messages.each do |m|
      rendered << render(:partial => 'partials/flash', :locals => {:type => type, :message => m}) unless m.blank?
    end
  end
  rendered.join('<br/>')
end

在使用起来非常简单之后:

您可以编写如下内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
flash_message :notice, 'text1'
flash_message :notice, 'text2'
flash_message :error, 'text3'

在你的控制器里。

然后将这一行添加到您的布局中:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<%= render_flash %>
票数 59
EN

Stack Overflow用户

发布于 2011-08-03 19:11:35

我认为构建在框架中的想法是,你粘贴到flash中的每一条消息都是可重写的。您可以为每条消息提供一个唯一的键,以便您可以更改或覆盖它。

如果您需要另一条消息,请不要将其称为“:通知”。每一个都是独一无二的。然后,为了呈现flash消息,循环遍历散列中的任何内容。

如果这对你不起作用,考虑你是否真的需要简化你的UI。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/2448789

复制
相关文章
给Rails应用添加Disqus
Add Disqus to Your Website Disqus is a pretty awesome tool for website comments. You just to need a little configuration to get things done. Here is a quick guide to add disqus to your rails app. Disqus Account and Setting Make sure you have an account, if
用户2183996
2018/06/28
3950
JavaScript给元素添加多个class的简单实现
当div 中的class 有多个classname时,它会同时应用这几个class定义的CSS样式,那么应用时的优先级是怎么样的?
浩Coding
2019/08/26
4.3K0
JavaScript给元素添加多个class的简单实现
使用rails实现最简单的CRUD
这里定义了路由hello/index,并且使用root方法将首页修改为了hello控制器下的index方法,也就是两路由的控制器一致。
用户1515472
2019/07/24
3.2K0
​Status Notice ¶​
The CMake build configuration is a community-maintained non-officially supported build setup for GEOS. All GEOS users who aim to rely on CMake, please respect Sandro's request stated in comment on ticket #576 :
用户3519280
2023/07/08
1450
php提示Notice: Undefined index解决方法
php提示Notice: Undefined index问题,Undefined index:是指你的代码里存在:“变量还未定义、赋值就使用”的错误,这个不是致命错误,不会让你的php代码运行强行中止,但是有潜在的出问题的危险……
全栈程序员站长
2022/07/11
1.4K0
给DataGrid添加Number列的简单方法
supposeDataGridnameddgCustomize, insertthefol
Java架构师必看
2021/03/22
6440
Flash XSS检测脚本的简单实现
前言 这里主要是讲如何快速扫描到有问题的flash文件,用于批量,有时候很笨的方法也会有奇效,下面记录一下在实现过程中的一些思路和遇到的一些坑。 第三方插件 通过自己为数不多的网站渗透的经验,发现了两
FB客服
2018/02/08
1.7K0
Flash XSS检测脚本的简单实现
Excel表格怎么添加表格?教你两个简单的添加方法
我们在Excel中录入数据的时候也需要添加表格,这样可以补充说明Excel数据的具体内容,表达效果会更好。那么Excel表格怎么添加表格呢?大家应该学习一下这两个方法,还不知道的同学要注意喽。
高效办公
2019/10/22
16.9K0
Excel表格怎么添加表格?教你两个简单的添加方法
HashMap遍历和notice
第一种可以把 key value 同时取出,第二种还得需要通过 key 取一次 value,效率较低, 第三种需要 JDK1.8 以上,通过外层遍历 table,内层遍历链表或红黑树。
一觉睡到小时候
2019/07/03
4240
HashMap遍历和notice
在CentOS(Linux)中添加单个IP和批量添加多个IP地方法
在/etc/sysconfig/network- s/中新建文件ifcfg-eth0:*,*为数字序号,多个IP则依次增大 以0为例,建立文件ifcfg-eth0:0
雾海梦曦
2022/11/14
3.7K0
添加多个用户的shell脚本
#!/bin/bash #批量添加N个用户,user01-userN ##版本:v0.1 #检查是否有mkpasswd命令 #如果没有该命令多需要安装expect包 if ! which mkpasswd &>/dev/null then echo"没有mkpasswd命令,安装该命令: " yum install -y expect fi #判断/data/user_passwd文件是否已经存在 #若存在,应该先删除 [ -f /data/user_passw
wo.
2021/06/15
9820
在CentOS(Linux)中添加单个IP和批量添加多个IP地方法
1、普通方法: 在/etc/sysconfig/network- s/中新建文件ifcfg-eth0-range0
Inkedus
2020/04/16
4.6K0
flash中按钮添加链接打开网页
btn :按钮实例名; _blank:打开方式(新窗口打开) fn :函数名称;
2021/11/08
1.2K0
3.同时管理多个socket的简单方法-select处理
本篇是第三篇,主要用来讲解作为服务器的机器是如何管理多个socket的客户端连接的,毕竟recv只能监视单个socket。
灰子学技术
2020/10/30
3.2K0
3.同时管理多个socket的简单方法-select处理
在IDEA启动多个Spring Boot工程实例的简单方法
有时候为了自测需要,springboot需要启动多个端口不同应用相同的项目,这时IDEA 就能帮我们简单的实现。本人由于在学习springcloud的Eureka,所以用到了Springboot多实例。 1、点击IDEA右上角的Edit Configurations,如图
一诺千金
2020/04/30
1.2K0
一次创建多个Pblock
在上篇文章中,我们提到了可以先选定一个cell,然后对该cell创建一个Pblock。这等效于一次创建一个Pblock。实际上,我们可以利用Create Pblocks Wizard,一次创建多个Pblock,这是一种半自动化的方式。相比于前一种更高效一些。
Lauren的FPGA
2019/10/30
9800
记一次 spinor flash 读速度优化
某个项目使用的介质是 spinor, 其 bootloader 需要从 flash 中加载 os。
zqb_all
2020/05/18
1.4K0
点击加载更多

相似问题

flash[:notice]未显示rails 4

33

flash[:notice]还是flash.notice?

24

Rails flash[:notice]始终为空

21

Rails:如何以模式显示flash[:notice]

10

flash[:notice]在Rails中不工作

40
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文