Tag: ruby

我可以使用“**”glob遍历Ruby中的符号链接目录吗?

在Ruby中, Dir.glob(“**/*.rb”) (例如)不遍历符号链接目录。 是否有可能获得**遍历符号链接? 我正在使用两个以这种方式查找文件的gem,但我需要它们来查看符号链接目录中的文件。

模拟系统调用ruby

知道一种模拟%[]的方法吗? 我正在编写测试代码,这些代码会进行一些系统调用,例如: def log(file) %x[git log #{file}] end 并且希望在测试此方法时避免实际执行系统调用。 理想情况下,我想模拟%x [..]并断言正确的shell命令传递给它。

将不间断空格转换为Ruby中的空格

我有一些情况,当编码为utf-8 json时,来自html textarea或输入的用户输入数据有时会以\u00a0 (非中断空格)而不是空格发送。 我认为这是Firefox中的一个错误,因为我知道用户不是故意放入不间断的空格而不是空格。 Ruby中还有两个错误,其中一个可以用来对抗另一个。 无论出于什么原因, \s都不匹配\u00a0 。 但是[^[:print:]] ,绝对不应该匹配)和\xC2\xA0都匹配,但我认为那些是不太理想的方法来处理这个问题。 是否有其他建议可以解决这个问题?

使空白参数为零

当用户提交表单并将某些字段留空时,它们将在数据库中保存为空白。 我想迭代params [:user]集合(例如),如果字段为空,则在更新属性之前将其设置为nil。 我无法弄清楚如何做到这一点虽然我知道迭代的唯一方法创建新对象: coll = params[:user].each do |c| if c == “” c = nil end end 谢谢。

Ruby / Sinatra – 提供css,javascript或图像文件

通过Sinatra路由您的请求以便在没有处理的情况下提供文件的正确方法是什么? 我正在寻找人们在Sinatra框架中最常见的方式吗? 我通常将所有静态内容放在“内容”路径中。 例子: /内容/ CSS /内容/ IMG /内容/ JS 如何使用通配符提供内容下的所有内容? 我很惊讶这里没有真正的例子: http://sinatra-book.gittr.com/

截断Markdown?

我有一个Rails站点,其中的内容是用markdown编写的。 我希望显示每个片段,并带有“阅读更多…”链接。 我该怎么做? 简单地截断原始文本将不起作用,例如.. >> “This is an [example](http://example.com)”[0..25] => “This is an [example](http:” 理想情况下,我希望允许作者(可选)插入标记以指定要用作“片段”的内容,如果不是,则需要250个单词,并附加“…” – 例如.. This article is an example of something or other. This segment will be used as the snippet on the index page. ^^^^^^^^^^^^^^^ This text will be visible once clicking the “Read more..” link 标记可以被认为是EOF标记(在显示完整文档时可以忽略) 我正在使用maruku进行Markdown处理(RedCloth非常偏向于Textile,BlueCloth是非常错误的,我想要一个本地Ruby解析器,它排除了peg-markdown和RDiscount) 或者(因为无论如何将Markdown翻译成HTML)正确地截断HTML是一种选择 – 尽管最好不要markdown()整个文档,只是为了获得前几行。 […]

Ruby mysql2错误

我收到以下错误 C:/Ruby193/lib/ruby/site_ruby/1.9.1/rubygems/custom_require.rb:36:in `require’: 126: The specified module could not be found. – C:/Ruby193/lib/ruby/gems/1.9.1/gems/mysql2-0.3.11-x86-mingw32/lib/mysql2/1.9/mysql2.so (LoadError) 尝试运行此脚本时… require “mysql2” client = Mysql2::Client.new(:host => “localhost”, :username => “root”, :password => “system32”) results = client.query(“SELECT * FROM project1_nodes”).each do |row| puts row end 有任何想法吗? 干杯马丁

在PostgreSQL中使用Sequel gem插入一个数组

我在代码中创建了一个包含以下模式的表 DB.create_table :Pokemon do primary_key :id String :first_name String :last_name String :email String :zipcode String :company_name String :google_profile String :skype String :phone String :about String :linkedin_profile_url String :company_url column :needs , ‘Text[]’ column :offering , ‘Text[]’ end 为了需要和提供我插入一个字符串数组与以下代码 pokes=DB[:Pokemon]; off=[‘hello1’ , ‘hello2’] nee= [‘need1’ , ‘need2’] pokes.insert(:first_name => ‘abcd’ ,:last_name => ‘mehandiratta’, :offering => off […]

如何使用Ruby将列标题写入csv文件?

我在使用Ruby将列写入csv文件时遇到问题。 下面是我的代码片段。 calc = numerator/denominator.to_f data_out = “#{numerator}, #{denominator}, #{calc}” File.open(‘cdhu3_X.csv’,’a+’) do|hdr| hdr << ["numerator","denominator","calculation\n"] #< column header hdr << "#{data_out}\n" end 代码将列标题添加到每一行,我只需要在每列数据的顶部。 我在这里和其他地方搜索过,但无法找到明确的答案。 任何帮助将不胜感激。

如何在YAML文件的顶部删除“—”?

我正在修改Ruby中的YAML文件。 在我回写修改后的YAML后,我看到—添加在文件顶部。 这是如何被添加的,我该如何摆脱它?