小编Jos*_*osh的帖子

rbenv,rvm和chruby有什么区别?

我是Ruby和Rails的新手.我正在寻找一个纯粹客观的功能列表,每个功能和优点/缺点.为了保持偏好,除非您使用了所有3个系统,否则请不要回答.

ruby rvm rbenv chruby

59
推荐指数
1
解决办法
3万
查看次数

什么是|| =是什么意思?

可能重复:
Ruby中的|| =(或等于)是什么意思?
什么是|| =是什么意思?

我刚开始学习RubyMotion,在很多例子中我都看到了||=语法.这是什么意思?

这是一个例子:

def window
  @window ||= begin
    w = UIWindow.alloc.initWithFrame UIScreen.mainScreen.bounds
    w.rootViewController = @navigationController
    w
end
Run Code Online (Sandbox Code Playgroud)

搜索符号很困难,谷歌忽略了我的查询中的符号.

ruby

14
推荐指数
1
解决办法
1万
查看次数

由于Asset Pipeline,Javascript和CSS加载两次

我可能只是做错了什么,但我的所有javascript文件以及我的css文件都是单独可用的.这将是完美的,除了资产管道还添加我的applicaion.js,这使我的javascript崩溃.有没有办法告诉rails不要加载所有单个文件,我只需要app.js/css文件.

在此输入图像描述

正如您在此处所看到的,搜索和排序栏显示两次,因为javascript尝试运行两次.其他人处理这件事吗?我看到其他几个人问这个问题,还没有看到一个好的答案.

javascript ruby-on-rails ruby-on-rails-3.1 asset-pipeline

8
推荐指数
1
解决办法
3095
查看次数

Ruby中lambda和def method_name之间的区别

我正在阅读pickaxe 1.9并且作者使用lambda像这样:

bo = lambda {|param| puts "You called me with #{param}"}
bo.call 99     => 'You called me with 99'
bo.call "cat"  => 'You called me with cat'
Run Code Online (Sandbox Code Playgroud)

我的问题是:这比仅仅定义一个做同样事情的方法更好/更差/不同?像这样:

def bo(param)
  puts "You called me with #{param}"
end

bo("hello") => 'You called me with hello'
Run Code Online (Sandbox Code Playgroud)

对我来说,lambda语法似乎更令人困惑和意大利面条.

ruby lambda function

8
推荐指数
1
解决办法
2686
查看次数

Google文档内联pdf显示为黑白色

我在我的rails应用程序中使用google docs iframe在pdals中嵌入pdf(托管在S3).这是代码:

$modalBody.append(
  "<iframe src='https://docs.google.com/viewer?url=<%= @url %>&embedded=true' width='100%' height='800'></iframe>"
);
Run Code Online (Sandbox Code Playgroud)

问题是有时(看似随机)pdf显示为黑色和白色,即使原始上传是彩色的.我唯一的提示是,呈现为黑色和白色的pdf通常只有很少的颜色(如下图所示).知道发生了什么事吗?

AWS

AWS pdf链接

pdf的屏幕截图

谷歌文档

Google文档链接(您可以通过将AWS链接插入Google文档查看器来获取此信息)

谷歌文档截图

pdf ruby-on-rails amazon-s3 amazon-web-services

8
推荐指数
1
解决办法
509
查看次数

6
推荐指数
1
解决办法
3206
查看次数

编写@ instances.count> 0的更好方法

我有这个代码:

<% if  @states.count > 0 %>  # @states is an active record collection
Run Code Online (Sandbox Code Playgroud)

我觉得应该有更好的方法来写这个.

我正在寻找类似的东西:

<% if  @states.not_empty? %>
Run Code Online (Sandbox Code Playgroud)

我意识到这是一个微小的变化,但它将是一个受欢迎的清理.

ruby ruby-on-rails

6
推荐指数
2
解决办法
2294
查看次数

红宝石的投掷和效率

catch在Ruby中意味着跳出深层嵌套的代码.在Java中,例如可以用Java try-catch来处理异常,但它被认为是不好的解决方案,而且效率也非常低.在Ruby中我们处理异常begin-raise-rescue,我认为将它用于其他任务也很昂贵.

Ruby是否catch-throw真的是一个更有效的解决方案,begin-raise-rescue还是有任何其他理由使用它来打破嵌套块而不是begin-raise-rescue

ruby performance try-catch control-structure throw

5
推荐指数
2
解决办法
1183
查看次数

如何在Ruby中超时子进程

我想测试一个进程是否正常运行所以我运行:

cmd = "my unix command"
results = `#{cmd}`
Run Code Online (Sandbox Code Playgroud)

如何为命令添加超时,以便如果超过x秒,我可以认为它不起作用?

ruby timeout

4
推荐指数
1
解决办法
1959
查看次数

tASSOC是什么意思?

我经常得到unexpected tASSOC语法错误,并且通常知道它所代表的错误类型,但是想知道它是什么tASSOC以及它代表什么.tASSOC是首字母缩略词吗?它听起来就像听起来一样吗?

ruby

3
推荐指数
1
解决办法
384
查看次数

ruby将字符串匹配到字符串数组

可能重复:
在Ruby中,如何判断字符串是否不在数组中?

现在我有这个代码:

partial_update = true if session[:intended_params][:controller] == 'foo'
partial_update = true if session[:intended_params][:controller] == 'bar'
partial_update = true if session[:intended_params][:controller] == 'ding'
partial_update = true if session[:intended_params][:controller] == 'dong'
partial_update = true if session[:intended_params][:controller] == 'up'
partial_update = true if session[:intended_params][:controller] == 'down'
partial_update = true if session[:intended_params][:controller] == 'bing'
# ETC. 
Run Code Online (Sandbox Code Playgroud)

我想改成这个

array = %w[foo bar ding dong up down bing]
partial_update = true if session[:intended_params][:controller]  == array.any_of_the_possibilites
Run Code Online (Sandbox Code Playgroud)

有没有办法做到这一点?

ruby arrays

2
推荐指数
1
解决办法
1878
查看次数

Rails CSV附件在浏览器中打开而不是下载

在我的rails 3应用程序中,我提供了一个CSV模板供用户下载.而不是下载它只是在新选项卡中打开文本.这是代码:

<a href="/templates/myFile.csv" target="_blank">click here</a>
Run Code Online (Sandbox Code Playgroud)

这对我以前很有用,我不知道有什么可以改变来打破它.与此类似的其他问题建议添加target='_blank'或更改标题,但我没有太多运气这样做.

我不认为它应该有所作为,但这个链接是在一个模态中,谁的身体来自这里:

<div class="modal hide" id="helpModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <%= modal_header "Help" %>
   <div class="modal-body">
    <%= render 'help' %>
  </div>
  <div class="modal-footer">
    <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
  </div>
</div>
Run Code Online (Sandbox Code Playgroud)

csv ruby-on-rails file attachment

1
推荐指数
1
解决办法
1715
查看次数