小编Mik*_*use的帖子

Ruby中的累积数组和

什么是最简单,最类似于Ruby的计​​算数组累积和的方法?

例:

[1,2,3,4].cumulative_sum
Run Code Online (Sandbox Code Playgroud)

应该回来

[1,3,6,10]
Run Code Online (Sandbox Code Playgroud)

ruby

28
推荐指数
3
解决办法
8510
查看次数

Rails应用程序的生命周期

我正在尝试学习rails应用程序的生命周期.application_controller.rb何时运行?每次改变或每次请求时它只是一次吗?

我想知道以下文件:

  • config/environments/*.rb(开发,生产或测试,取决于当前模式)
  • 的boot.rb
  • 的environment.rb
  • 的routes.rb

我问这个的原因之一是,我想知道哪里是个好地方

  • 初始化代码
  • 自定义配置数据

编辑:

@Gdeglin的答案很好,但我真的很想知道每个文件何时运行.

ruby ruby-on-rails

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

将行附加到csv文件Ruby 1.9 CSV lib

使用Ruby 1.9和CSV lib,我似乎无法追加一行.文档中的示例打开文件,并覆盖该行.将行附加到文档的正确方法是什么?

文档示例:

require 'csv'
CSV.open("path/to/file.csv", "wb") do |csv|
  csv << ["row", "of", "CSV", "data"]
  csv << ["another", "row"]
  # ...
end
Run Code Online (Sandbox Code Playgroud)

ruby csv ruby-1.9

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

如何用Ruby学习TDD?

我一直使用红宝石大约一个月,我真的很喜欢它.但是,我使用甚至学习TDD都非常困难.我的大脑不会那样运作......

我真的非常想学习TDD,但说实话我有点困惑.我在Google上找到的所有文章都主要针对Rails,这对我来说并不感兴趣,因为我想学习如何对任何ruby应用程序进行高效测试,从简单的单文件脚本到复杂的gem,而不是网络应用.此外,还有很多框架和很少的入门教程.

有人可以给我任何关于如何学习TDD的建议,这样我至少可以开始认为自己是一个有抱负的rubyist吗?

ruby testing tdd

25
推荐指数
3
解决办法
9577
查看次数

使用ActiveRecord在数据库中存储数组

我在rails 2.3.8&我使用mysql作为db适配器.我想在我的数据库中存储数组.搜索后我可以拿出这篇非常有用的文章.

现在我需要使用GUI进行输入而不仅仅是服务器控制台.所以说我有一个名为nums的文本字段,逻辑上应该有int数组.什么应该是nums的格式,以便从该字符串中检索和存储数组变得容易?

ruby activerecord ruby-on-rails

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

Rails/ActiveRecord中不区分大小写的唯一索引?

我需要在rails中的列上创建一个不区分大小写的索引.我是通过SQL做到的:

execute(
   "CREATE UNIQUE INDEX index_users_on_lower_email_index 
    ON users (lower(email))"
 )
Run Code Online (Sandbox Code Playgroud)

这很好用,但在我的schema.rb文件中我有:

add_index "users", [nil], 
  :name => "index_users_on_lower_email_index", 
  :unique => true
Run Code Online (Sandbox Code Playgroud)

注意"无".因此,当我尝试克隆数据库以运行测试时,我得到一个明显的错误.我在这里做错了吗?我应该在rails中使用其他一些约定吗?

谢谢您的帮助.

activerecord ruby-on-rails

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

ActionController :: Base.relative_url_root的替代品是什么?

我正在将一个2.x rails应用移植到rails3; 我们称之为foo-app.Foo-app是更大的rails应用程序的一部分,位于main_rails_app.com/foo-app.以前我们只是在foo-app生产配置中设置以下内容,以确保我们的foo-app路由正常工作:

ActionController::Base.relative_url_root = "/foo-app"
Run Code Online (Sandbox Code Playgroud)

但是,使用rails3,我现在得到:

DEPRECATION WARNING: ActionController::Base.relative_url_root is ineffective. Please stop using it.
Run Code Online (Sandbox Code Playgroud)

我已经将配置条目更改为以下内容:

config.action_controller.relative_url_root = "/foo-app"
Run Code Online (Sandbox Code Playgroud)

这主要是因为对外部资源(javascript/css/images)的所有调用都将使用/ foo-app.但是,我的路线没有任何改变,换句话说,foo-app root_path给我'/'当我期待'/ foo-app'.

两个问题:

  1. 什么是ActionController :: Base.relative_url_root的替代品
  2. 如果是config.action_controller.relative_url_root,那么为什么我的路由没有反映我设置的relative_url_root值?

ruby-on-rails ruby-on-rails-3

20
推荐指数
3
解决办法
2万
查看次数

在Excel中,如何提取十个字母字符串的最后四个字母?

例如,如果我有

ABS YUR YUAO   
HFH IWO OQNX  
YQO PQM QUCC
Run Code Online (Sandbox Code Playgroud)

如何提取另一列中的最后四个字母?

excel extract excel-formula

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

如何在Ruby中将日期格式化为mm/dd/yyyy?

在Perl中你可以做到:

my $current_time = DateTime->now();
my $mdy = $current_time->mdy("/");
Run Code Online (Sandbox Code Playgroud)

在Ruby中最简单的方法是什么?

ruby time

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

如何在工作表中格式化的VBA中检索Excel单元格值?

我需要在数字列表中保留前导零.这些数字是这样添加的(在循环中,但这只是使用(1,1)的一个例子:

Set cel = Sheet.worksh.Cells(1, 1)
cel.ColumnWidth = 10
cel.Value = e.Name
cel.NumberFormat = "0000"
Run Code Online (Sandbox Code Playgroud)

数字在哪里e.Name,比如"0720".这显示在工作表上就好了,但如果我做这样的事情:

Msgbox Sheet.worksh.Cells(1, 1).Value
Run Code Online (Sandbox Code Playgroud)

我得到"720".我需要它是"0720",我知道我可以检查使用Len()并以这种方式添加零,但我想知道是否有更直接的方法使用Range对象来为我做这个.

excel formatting vba

17
推荐指数
3
解决办法
4万
查看次数