Rails 在 partial 中 传递 collection,默认的循环变量 是 partial的名字(约定)。或者你想改变变量名的话,可以使用 :as 参数声明一个变量。。。不能用惯性思想 for ...........in........等
例如:
之前错误的写法:
partial : _feednews.html.erb
<%= render :partial => 'shared/feednews_item',:collection => @feeds = feed_collection("hot").items %>
partial : _feednews_item.html.erb
<ul>
<% for feed in @feeds.items %>
<li class="news"><a href="<%= feed_link(feed.link)
%>" target="_blank"><%= feed_title(feed.title)
%></a><br />
<span class="grey small"><span> <%=
feed_from(feed.title)
%></span> — <span><%=
feed.pubDate.to_date %></span></span></li>
<% end %>
</ul>
上面第二个 partial 显示的结果 for 循环 输出 后的 加上 rails 约定的partial collection 循环输出了。。结果重复。。做的过程中还遇到 partial collection empty 这个异常
原因是 feed_collection("hot").items 返回的结果不是一个 collection..
正确的写法:
partial : _feednews.html.erb
<div><%= render :partial => 'shared/feednews_item',:collection => feed_collection("hot").items %></div>
partial : _feednews_item.html.erb
<ul>
<% unless feednews_item.nil? %>
<li class="news"><a href="<%=
feed_link(feednews_item.link) %>" target="_blank"><%=
feed_title(feednews_item.title) %></a><br />
<span class="grey small"><span> <%=
feed_from(feednews_item.title)
%></span> — <span><%=
feednews_item.pubDate.to_date %></span></span></li>
<% end %>
</ul>
从上面的prtial中可以看出 变量 是feednews_item 也就是partial的名字
总结,一句话,如果 你在 partial 中 传了 collection ,那么 就用 partial的名字 作变量输出, 不需要 迭代, 如果 没有 传collection , 那么 就需要 迭代输出!
分享到:
相关推荐
整理后的在Ruby on rails的Haml有关render_partial的用法,本资源为一张图
[Ruby_on_Rails][中文][Rails_5.x]__11._Render_部分partial與使用上的實例
render partial: 'modals/modal_content', locals: { modal_data: @modal_data } end ``` ### 部署Rails 5.2项目 部署Rails 5.2应用程序通常涉及以下步骤: 1. **环境设置**:确保服务器满足Rails 5.2所需的Ruby...
Collection + Json Rails 将Rails的特定功能添加到。 安装 将此行添加到您的应用程序的Gemfile中: gem 'collection_json_rails' , '~> 0.4.2' 然后执行: $ bundle 或将其自己安装为: $ gem install ...
### Ruby on Rails Guides v2 - Ruby on Rails 4.2.5 #### 一、重要概念及基础假设 - **重要概念**:本指南旨在帮助读者深入理解Ruby on Rails(以下简称Rails)4.2.5版本的核心功能与最佳实践。 - **基础假设**:...
《Rails101_by_rails4.0》是一本专注于Rails 4.0.0版本和Ruby 2.0.0版本的自学教程书籍,它定位于中文读者,旨在成为学习Rails框架的参考教材。Rails(Ruby on Rails)是一个采用Ruby语言编写的开源Web应用框架,它...
Ruby on Rails,通常简称为Rails,是一个基于Ruby编程语言的开源Web应用框架,遵循MVC(Model-View-Controller)架构模式。这个“Rails项目源代码”是一个使用Rails构建的图片分享网站的完整源代码,它揭示了如何...
可以创建一个购物车组件(partial),在多个页面中复用。同时,利用Bootstrap或类似的前端框架提升用户体验。 控制器是处理用户请求的关键部分。例如,`CartsController` 可能有`add_item`、`remove_item`和`...
Rails 3.1 和 Cucumber-Rails 1.2.0 是两个在Web开发领域非常重要的工具,尤其对于Ruby on Rails框架的测试和自动化流程。本文将深入探讨这两个组件,以及它们如何协同工作来增强软件开发的效率和质量。 首先,...
从给定的文件信息来看,我们正在探讨的是一本关于Ruby on Rails的书籍,书名为《Simply Rails2》,作者是Patrick Lenz。本书旨在为初学者提供深入理解Ruby on Rails框架的指南,从基础概念到高级主题均有涵盖,是...
Ruby on Rails,简称Rails,是基于Ruby编程语言的一个开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和可读性,同时强调“约定优于配置”的原则。在本实例开发中,我们将探讨如何...
Rails指南中文版是针对Ruby on Rails框架的一份详尽教程,旨在帮助开发者深入理解并熟练掌握这个强大的Web应用开发工具。Ruby on Rails(简称Rails)是一个基于Ruby语言的开源Web应用框架,它遵循MVC(Model-View-...
在开发Web应用时,Ruby on Rails(简称Rails)框架因其高效、简洁的代码风格和强大的社区支持而备受青睐。Aptana是一款强大的集成开发环境(IDE),尤其适用于Rails项目的开发,它提供了丰富的特性来提升开发效率。...
标题 "Rails" 指的是 Ruby on Rails,一个开源的Web应用程序框架,它基于Ruby编程语言,遵循MVC(模型-视图-控制器)架构模式。Rails由David Heinemeier Hansson在2004年创建,其设计理念是强调代码的简洁性、DRY...
Ruby on Rails 安装指南 Ruby on Rails 安装指南是指安装 Ruby 1.8.6 和 Rails 2.0.2 的详细步骤。首先,需要下载 Ruby One-Click Installer 版本,并安装 Ruby。然后,下载 Rails 2.0.2 版本,并安装。接下来,...
turbolinks_render 在Rails控制器中使用render并通过Turbolinks处理响应。 Turbolinks开箱即用地支持 。 但是不支持render ,您必须使用。 该宝石旨在解决该问题。 我认为Turbolinks / Rails应该正式处理此问题。 ...
[Pragmatic Bookshelf] Crafting Rails Applications Expert Practices for Everyday Rails Development (E-Book) ☆ 图书概要:☆ Rails 3 is a huge step forward. You can now easily extend the framework, ...
rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails 2.3.2离线安装rails ...
Rails Recipes是一本针对Ruby on Rails框架的实用书籍,它收集了一系列高效解决问题的技巧和方法,也被称为“Rails开发者的宝典”。作者们通过分享自己的经验和见解,为Rails程序员提供了一本既有实际操作指导又有...
Rails是Ruby语言的一个著名Web开发框架,全称为Ruby on Rails,它遵循MVC(Model-View-Controller)架构模式,旨在提高开发效率和代码可读性。本示例"rails项目起步示例"是一个购物系统,非常适合初学者入门学习。 ...