jjzjj

Ruby 最佳实践 : if not empty each do else in one operator

1.我找不到一种优雅的方式来编写这段代码:ifarray.empty?#processemptyarrayelsearray.eachdo|el|#processelendend我想要一个循环,而不用写两次array。我读了this,但没有足够好的解决方案。2。我实际上在HAML模板中。同样的问题。-ifarray.empty?%pNoresult-else%ul-array.eachdo|el|%liel 最佳答案 怎么样?array.eachdo|x|#...puts"x",xend.empty?andbeginputs"emp

ruby - ruby haml 中链接后的标点符号

我有这个代码:%pAdebtorwiththecourt'sapprovalcanhireattorneysvia%a{:id=>"proc",:href=>'/codes#rule327'}Section327.呈现:经法院批准的债务人可以通过第327条聘请律师。我知道这非常挑剔,但我不想把句点加粗。当我尝试时:%pAdebtorwiththecourt'sapprovalcanhireattorneysvia%a{:id=>"proc",:href=>'/codes#rule327'}Section327\.它产生:经法院批准的债务人可以通过第327条聘请律师。我想知道如何获得:经

ruby - 如何在 Haml 中构建布局模板

我有一个使用Haml进行布局的网页。“layout.haml”是一个单独的布局文件,用于呈现任何实际的Haml页面。layout.haml看起来像这样:-#layout.haml!!!XML!!!%html%head...%body...#content=yield这当然已经在文档的中了因此无法直接在header中操作内容。例如通过@title更改.一个更大的问题是每个页面特定的JavaScript都需要加载到正文中。此外,layout.haml已经包含JavaScript,因此jQuery通常会被多次实例化。对于更好的模板结构有什么建议吗? 最佳答案

ruby - 条件 haml - if else 嵌套

我想要的是“if”中的内容和“else”中的内容以包括#main-block。-if@transparency#content-inner{:style=>"background:url(../../../images/illustrations/"+@transparency+")no-repeat88%50%"}-else#content-inner#main-block目前发生的情况是,如果定义了@transparency,则#main-block不会嵌套在#content-inner中。 最佳答案 您可以使用三元运算符有条件

ruby - 没有 Rails 的 Ruby 中的部分 HAML 模板

对于我的小项目,我真的不需要Rails的开销,所以我尝试只使用普通的Ruby和HAML来实现这一点。我想在我的HAML模板中包含另一个HAML文件。但我还没有找到一种好的或真正可用的方法来做到这一点。例如,我有这两个HAML文件:文档.haml%html%body=include(menu.haml)body%article…菜单.haml%ul%li%awhatever…包含显然不是去这里的方式。但它很好地描述了我在此示例中要实现的目标。 最佳答案 我完全推荐Tilt这些东西的gem。它提供了一个标准接口(interface),用

ruby - 如何在 HAML 中包装多行 Ruby 参数?

如何在HAML中为单个Ruby语句使用多行?例如,我想写如下内容:-entries=[{-:title=>"TheFellowshipoftheRing",-:body=>"Weshouldwalkinsteadoffly"-}]!!!5%html%head%titleBlog%body#content-entries.eachdo|entry|.entry%h3.title=entry[:title]%p.body=entry[:body]当然,前四行会产生语法错误。 最佳答案 用逗号包裹参数根据HAMLFAQ:[W]henafu

ruby - 在 sinatra 中获取绝对(基本)url

现在,我做一个get'/'doset:base_url,"#{request.env['rack.url_scheme']}://#{request.env['HTTP_HOST']}"#...haml:indexend能够在HAMLindex.haml中使用options.base_url。但我确信有一种更好的、更干的方法可以做到这一点。然而我看不见,也找不到。(我是Sinatra的新手:))不知何故,在get之外,我没有可用的request.env,或者看起来是这样。所以把它放在一个包含中是行不通的。你如何获得你的基本网址? 最佳答案

ruby - 如何在 sinatra View 中呈现局部(haml in haml)?

我有一个简单的sinatra应用程序,它使用haml和sass作为View。其中一个View(位于View文件夹中)是我的导航菜单的一部分。我正在尝试从index.haml渲染它,但出现以下错误:参数数量错误(1对2)我正在尝试使用index.haml中的以下行来呈现它.navigation=render:partial=>"nav" 最佳答案 你可以只使用Sinatra的haml函数:=haml:nav 关于ruby-如何在sinatraView中呈现局部(hamlinhaml)?,我

ruby - 调用 View 文件时如何传递参数?

我使用Sinatra和Haml编写了一个网络表单,将用于调用Ruby脚本。一切似乎都很好,除了一件事:我需要从Sinatra/Ruby脚本向HamlView文件传递一个参数。这是我的部分代码:#!/usr/bin/envrubyrequire'rubygems'require'sinatra'require'haml'get'/'dohaml:indexendpost'/'doname=params[:name]vlan=params[:vlan]tmp=niltmp=%x[./wco-hosts.rb-a-n#{name}-v#{vlan}]iftmp.include?("Error

ruby-on-rails - 使用 HAML 生成单行注释?

我试图在HTML文件末尾的一行中生成注释:我试过了/generatedby#{@server_name}但这会输出超过3行-我试过了/generatedby#{@server_name}但这不会评估@server_namevar-有什么想法吗? 最佳答案 正如您可以在需要时返回原始HTML输出一样,您也可以插入原始HTML注释,甚至可以进行插值。这个模板:-@foo=42#test1/Hello#{@foo}#test2产生这个输出:使用Hamlv3.1.4(SeparatedSally)测试