Rails render collection 的魔法
都知道的, 在 Rails 的 View 里边渲染集合的时候, 会用到 render 方法参数的 collection 选项
|  |  | 
而不是遍历集合来渲染单个模板.
渲染集合还有个简写形式. 假设 @products 是 product 实例集合, 在 index.html.erb中可以直接写成下面的形式, 得到的结果是一样的:
|  |  | 
这里, Rails 做的魔法其实是去找遍历成员的 to_partial_path
action_view/renderer/partial_renderer (Rails 4.2)
|  |  | 
打开 rails console 可以试试
|  |  | 
这里也可以把 user 这个 model 的 to_partial_path 重写, 返回表示渲染路径的字符串,
如果你的某个 PORO 实现了 to_partial_path, 那对应的 collection 也可以直接用类似的方式去 render
Rails render collection 的魔法的更多相关文章
- rails render
		Render結果 在根據request資訊做好資料處理之後,我們接下來就要回傳結果給用戶.事實上,就算你什麼都不處理,Action方法裡面空空如也,甚至不定義Action,Rails預設也還是會執行r ... 
- rails member collection
		resources :theses do resources :document do get :download, :on => :member end end <a class=&qu ... 
- rails 杂记 - erb 中的 link_to 的 ActiveRecord 与 render 中的 partial
		路由及路由参数 <%= link_to 'My Blog', {controller: 'articles', demo: "lidsi"}, class: "bl ... 
- ASP.NET MVC与RAILS3的比较
		进入后Web年代之后,MVC框架进入了快速演化的时代,Struts等垂垂老矣的老一代MVC框架因为开发效率低下而逐渐被抛弃,新一代的MVC则高举敏捷的大旗,逐渐占领市场,其中的代表有Rails (ru ... 
- WPF DataGrid Custommization using Style and Template
		WPF DataGrid Custommization using Style and Template 代码下载:http://download.csdn.net/detail/wujicai/81 ... 
- ruby on rails 中render的使用
		最近写ror,因为比较菜,很多东西不知道,只能看一点查一点了 render 先上点搜集的常用方式 render :action => "long_goal", :layout ... 
- rails 杂记 - render and layout
		官方文档:http://guides.rubyonrails.org/layouts_and_rendering.html 渲染 view 渲染 html.rb 与相应的 action control ... 
- rails局部模板 render
		<%= render partial: 'file' %> file是以_开头命名的文件,比如_cart.html.erb 这样就可以用render来调用了 还可以传参数 比如 rails ... 
- ruby on rails 中render的
		Ruby rails页面跳转代码如下: 1.render(:text => string) 2.render(:inline => string, [:type => "r ... 
随机推荐
- HDU 5282:Senior's String
			Senior's String Accepts: 30 Submissions: 286 Time Limit: 2000/1000 MS (Java/Others) Memory Limit ... 
- 实战 迁移学习 VGG19、ResNet50、InceptionV3 实践 猫狗大战 问题
			实战 迁移学习 VGG19.ResNet50.InceptionV3 实践 猫狗大战 问题 参考博客:::https://blog.csdn.net/pengdali/article/detail ... 
- zabbix监控oracle之orabbix安装
			zabbix服务器安装配置 zabbixserver中安装该软件 mkdir /opt/orabbix cp orabbix-1.2.3.zip /opt/orabbix cd /opt/orabbi ... 
- 下页小希学MVC5+EF6.2 学习记录二
			目的:1 学习mvc+ef 2 写下日记也是对自己的督促 从前端的UI开始 MVC分离的比较好,开发顺序没有特别要求,先开发哪一部分都可以,这次我们主要讲解前端UI的部分. ASP.NET MVC抛 ... 
- Java学习笔记(一) 面向对象---封装
			面向对象---封装 封装是面向对象思想的三大特征之一. 理解: 隐藏对象的属性和实现细节,仅对外提供公共访问方式. 优点: 将变化隔离 便于使用 提升代码复用性 提高安全性 封装原则: 将不需要对外提 ... 
- 阿里巴巴技术总监全解中台架构19页ppt
			//初创时,快速上线 单体架构至少撑了3年 //分布式,中间件基座 //平台化,内部是简单服务,对于业务侧就是快速上线 //平台化之后由于多平台协作问题,再次出现问题: 效率仍然不能匹配业务发展之需要 ... 
- MVC三层架构在各框架中的特征
			转一篇写得很棒的文章:https://my.oschina.net/win199176/blog/208171?p=7&temp=1495894148424 1.基于web开发中最原始的jsp ... 
- comparable and comparator 比较
			转:http://www.yingjiesheng.com/job-002-393-132.html 一.前言 在Java集合框架里面,各种集合的操作很大程度上都离不开Comparable和Com ... 
- php序列化(serialize)和反序列化(unserialize)函数
			用法:serialize().unserialize() 适用情境:serialize()返回字符串,此字符串包含了表示value的字节流,可以存储于任何地方.这有利于存储或传递 PHP 的值,同时不 ... 
- Android自定义View——仿滴滴出行十大司机评选活动说明
			滴滴出行原版图 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 仿图 ? ? ? ? ? ? 1.分 ... 
