加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – rails面试问题

发布时间:2020-12-17 02:27:10 所属栏目:百科 来源:网络整理
导读:我在之前的一次采访中得到了这个问题而无法做到,任何想法? 这又回来了什么?它会在哪里使用? module ApplicationHelper def show_flashflash.map{|key,value| content_tag(:div,value,{:class = key})} endend 解决方法 ‘flash’是一种ruby-on-rails约定,
我在之前的一次采访中得到了这个问题而无法做到,任何想法?
这又回来了什么?它会在哪里使用?

module ApplicationHelper
 def show_flash
flash.map{|key,value| content_tag(:div,value,{:class => key})}
 end
end

解决方法

‘flash’是一种ruby-on-rails约定,用于存储在一个请求中生成的信息(例如,“无效用户名”或“未找到会话”或“感谢我们购买”或“购物车更新”)以便呈现从客户端进入下一个视图.

flash是类似哈希的对象.

类似哈希的对象的.map方法将迭代哈希中的所有项目;在这种情况下,.map方法正在传递一个接受两个参数的块(它指定键和值,因为该键可用于从散列中查找值).该块使用content_tag帮助器输出新的< div>具有散列值和CSS选择器类键的元素.

所以对于像这样的闪光:{:name => “sars”,:food => “比萨”}

它将大致像这样发出HTML:< div class =“name”> sars< / div>< div class =“food”> pizza< / div>.

这是一个聪明的小助手方法,可能会节省大量的输入,但它做了一些假设:视图中的顺序无关紧要,所有的键都已经在CSS中,或者CSS准备处理未知的类元素以优雅的方式.这个帮助器可能只在模板中使用过一次,但是作为一种可以在以后放入其他项目的方法仍然有用.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读