标签: ruby

在haml中插入文本块

在我的Jekyll博客中,我使用include标记将文件的内容放入文档中.但是,如果我尝试使用基于HAML的文档执行此操作,则包含的文本的缩进是错误的.:preserve不起作用,因为它需要缩进.有没有办法在不依赖缩进的情况下指定文本块?

%html
  %body
    - preserve do
<strong>included text from file</strong>
    - end
Run Code Online (Sandbox Code Playgroud)

ruby syntax markup haml jekyll

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

:: MyClass Ruby作用域操作符有什么作用?

什么是::MyClass/MyModule范围运营商在Ruby中做的,什么是它的目的是什么?

ruby

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

路由错误:Rails 3中未初始化的常量

我有一个包含辅助类的文件,如下所示:

应用程序/类/ myfile.rb

Module mymodule
  class myclass
    # blah blah
  end
end
Run Code Online (Sandbox Code Playgroud)

我想在控制器中使用这个类,所以我写了这样的东西:

require 'myfile'

class MyController < ApplicationController

  include mymodule  

  def index
    mymodule::myclass.new
  end

end
Run Code Online (Sandbox Code Playgroud)

控制器的路由定义如下:

  match 'mycontroller', :to => 'mycontroller#index'
Run Code Online (Sandbox Code Playgroud)

现在我面对的是奇怪的行为.它在服务器启动后的第一次运行时完美运行.但是当我刷新页面或再次点击URL时,我收到以下错误.

Routing Error

uninitialized constant MyController::mymodule
Run Code Online (Sandbox Code Playgroud)

我无法从错误中找出任何东西,也不能理解为什么它从第二次打击起不起作用.发生了什么?

ruby ruby-on-rails

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

Ruby对象有大小限制吗?

我正在构建一些在应用程序中具有短寿命的大字符串.String对象是否会随意增大,直到ruby实例的物理极限?

我想知道的是,如果在没有任何干预限制字符串大小的情况下,我的应用程序会因内存不足而受到冲击,或者它是否会优雅地降级.

感谢您的任何意见!

ruby

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

有没有人有使用Ruby in Steel的经验?

主要来自.NET背景,我对Visual Studio非常依恋(无论好坏).

不过,我现在正在上学软件工程,我的第一堂课是使用Ruby on Rails在XP(极限编程).大多数情况下,我听说当你在Ruby中开发时,你总是会跳过整个IDE; 而且我完全乐于接受这种可能性.虽然有IDE,但似乎必须至少有一些人仍然发现使用它是值得的.

因为我如此熟悉VS,如果没有人在那里已经用我只是想知道红宝石钢.从网站上看,它看起来确实不错.我完全不知道它对于一般的RoR开发有多么有用或合适,这就是为什么我认为我会把这个问题扔出去.

你使用过Ruby In Steel吗?你对它有什么印象?它如何与其他着名的IDE(如Netbeans)相抗衡?是否值得使用IDE进行RoR开发,或者是一个优秀的文本编辑器?

ruby ide ruby-on-rails ruby-in-steel

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

"gem update --system在Debian上被禁用"错误

当我尝试更新rubygems(通过运行'gem update --system')时,我收到此错误:

ERROR:  While executing gem ... (RuntimeError)
gem update --system is disabled on Debian. RubyGems can be updated using the official Debian repositories by aptitude or apt-get.
Run Code Online (Sandbox Code Playgroud)

知道什么可能是错的,我怎么能解决它?

ruby rubygems ruby-on-rails

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

在Ruby 1.8中将字符串简单转换为UTF-8

我知道在Ruby 1.9中你可以轻松地重新编码这样的字符串.

s = s.encode('UTF-8')
Run Code Online (Sandbox Code Playgroud)

Ruby 1.8中的等价物是什么?什么需要线路它需要.

我看到的所有教程都是不必要的复杂,我不明白发生了什么.

ruby character-encoding

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

Textmate Rails3没有这样的文件加载 - bundler

当我尝试在Rails3中从TextMate运行测试时,我得到一个错误,我追溯到boot.rb. 当我尝试通过textmate运行boot.rb时,我收到此错误:

LoadError: no such file to load — bundler

method gem_original_require in custom_require.rb at line 31
method require  in custom_require.rb at line 31
at top level    in boot.rb at line 4
Run Code Online (Sandbox Code Playgroud)

这甚至是一个全新的铁轨项目.我能够从终端呼叫运行相同的boot.rb文件

ruby <path_to>/boot.rb
Run Code Online (Sandbox Code Playgroud)

我可以验证我的TM_RUBY变量which ruby与从命令行调用时的变量相同.你有什么线索我可能会收到这个错误吗?

ruby textmate ruby-on-rails bundler

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

使用块创建哈希(Ruby)

我可以从一个块创建一个Ruby哈希吗?

像这样的东西(虽然这特别不起作用):

foo = Hash.new do |f|
  f[:apple] = "red"
  f[:orange] = "orange"
  f[:grape] = "purple"
end
Run Code Online (Sandbox Code Playgroud)

ruby hash block

9
推荐指数
3
解决办法
8326
查看次数

红宝石中的穿插功能?

我正在寻找相当于Ruby中的haskell instersperse函数.基本上,在列表的每个元素之间添加一些东西(比如分隔符).

intersperse(nil, [1,2,3]) => [1,nil,2,nil,3,nil,4].
Run Code Online (Sandbox Code Playgroud)

我不是要求任何代码(我可以做到,我可能在你阅读这个问题之前已经完成了).我只是想知道标准Ruby平台上是否已经存在这样的功能.

更新

我不是要求任何代码,尤其是那些使用flatten的代码,因为它不起作用(flatten不仅平坦一个级别而且全部).我给出了示例[1,2,3]作为示例,但它应该可以使用

 [[1,2],[3,4]].interperse("hello") => [[1,2], "hello", [3,4]]
Run Code Online (Sandbox Code Playgroud)

(请不要向我发送任何代码以使其有效,我已经拥有它

class Array
  def intersperse(separator)
    (inject([]) { |a,v|  a+[v,separator] })[0...-1]
  end
end
Run Code Online (Sandbox Code Playgroud)

)

ruby

9
推荐指数
2
解决办法
1248
查看次数