当前位置: 首页 > 编程笔记 >

Ruby on Rails 部分

慕阳伯
2023-03-14
本文向大家介绍Ruby on Rails 部分,包括了Ruby on Rails 部分的使用技巧和注意事项,需要的朋友参考一下

示例

局部模板(partials)是一种将渲染过程分成更易于管理的块的方法。部分操作使您可以从模板中提取代码段以分离文件,并在整个模板中重复使用它们。

创建部分文件,请创建一个以下划线开头的新文件:_form.html.erb

要将局部渲染为视图的一部分,请在视图内使用render方法:<%= render "form" %>

  • 注意,渲染时下划线被忽略

  • 如果部分文件位于其他文件夹中,则必须使用其路径进行渲染

要将变量作为局部变量传递到局部变量,请使用以下表示法:

<%= render :partial => 'form', locals: { post: @post } %>

当您需要重用完全相同的代码(DRY原理)时,部分函数也很有

例如,要重用<head>代码,请创建一个名为的部分_html_header.html.erb,输入<head>要重用的代码,并在需要时通过以下方式呈现该部分:<%= render 'html_header' %>。

对象局部

to_partial_path也可以渲染响应的对象,如中所示<%= render @post %>。默认情况下,对于ActiveRecord模型,这将类似于posts/post,因此通过实际渲染@post,views/posts/_post.html.erb将渲染文件。

post将自动分配一个本地名称。最后,<%= render @post %>是的捷径<%= render 'posts/post', post: @post %>。

to_partial_path也可以提供响应对象的集合,例如<%= render @posts %>。每个项目将被连续渲染。

全球部分

要创建可在任何地方使用而无需引用其确切路径的全局部分,则必须将部分位于views/application路径中。下面的示例已被修改以说明此功能。

例如,这是通向全局部分的路径 app/views/application/_html_header.html.erb:

要在任何地方渲染此全局部分,请使用 <%= render 'html_header' %>

 类似资料:
  • 我得到了这个错误,我知道它的意思 DL已弃用,请使用Fiddle DL已被弃用,请使用Fiddle获取源索引从 rubygems.org/由于错误(2/3)而重试源获取: Bundler::Fetcher::CertificateFailureER ror无法验证<--的SSL 证书plhd--3/>您可能遇到中间人攻击,但最有可能的是您的系统没有验证所需的CA证书。有关 OpenSSL证书的信息

  • 想下载S3签名视频文件…但不是下载它将要播放。。。 使用send_dataS3下载 视频文件=”https://s3-eu-west-1.amazonaws.com/tokboxhub.mangoapps.com/46250362/2e1ad9d5-8240-41d2-82bc-38c34bf92e7e/archive.mp4?X-Amz算法=AWS4-HMAC-SHA256

  • 我从来没有用过红宝石,我想我应该试一试。安装似乎进行得很顺利(我想)。在我使用创建服务器后,麻烦就开始了,然后去设置路由,这样新项目就会出现,而不是红宝石欢迎屏幕。它产生的误差是 未初始化常量欢迎控制器 我在route controller中设置了路径,如下所示 我漏了一步吗?我正在使用installrails的说明在Windows7上安装rails。通用域名格式 这是请求的完整跟踪

  • 我遵循Rails指南:http://guides.rubyonrails.org/getting_started.html 我的索引中有下面一行。html。雇员再培训局: 但它不起作用;它只会进入展示页面。 供你参考,这是我的路线。rb: 我的控制器: 我的申请书。js: 我的申请书。html。雇员再培训局: 请注意,我已尝试更改

  • 问题内容: 在C#.net中,有一个规定,要有两个不同的类文件,并使用关键字partial关键字使它们成为一个类。这有助于将[UI]和逻辑分开。当然,我们可以有两个类来实现这一类,一个用于UI,另一个用于逻辑。可以在Java中实现吗? 问题答案: 源文件分割 不能。Java源代码不能拆分为多个文件。 摘自Wikipedia文章 Java和C Sharp的比较 Sun Microsystems Ja

  • 问题内容: 我试图将一组从-100到0的数字归一化到10-100的范围,并且遇到了问题,只是注意到即使根本没有任何变量,这也无法评估我期望的方式: 浮动划分也不起作用: 如果除法的任一侧都转换为浮点数,它将起作用: 第一个示例中的每一边都被评估为一个int,这意味着最终答案将被转换为一个int。由于0.111小于.5,因此将其舍入为0。在我看来,这不是透明的,但我想是这样的。 有什么解释? 问题答

  • 参考手册这部分涵括了Sprint Framework对表现层(特别是基于web的表现层)的支持。 在这章的前两节介绍了Spring Framework自己的web框架,Spring Web MVC, 这部分中剩下的一些章节介绍了Spring Framework与其他web实现的整合技术, 例如 Struts 和 JSF(作为范例,仅列出两个)。 这部分以Spring的MVC Portlet框架 作

  • 监督学习(Supervised learning) 咱们先来聊几个使用监督学习来解决问题的实例。假如咱们有一个数据集,里面的数据是俄勒冈州波特兰市的 $47$ 套房屋的面积和价格: 居住面积(平方英尺) 价格(千美元) $2104$ $400$ $1600$ $330$ $2400$ $369$ $1416$ $232$ $3000$ $540$ $\vdots$ $\vdots$ 用这些数据来投