【发布时间】:2016-10-12 06:37:09
【问题描述】:
我有一个包含以下内容的文件:
class Rename < ActiveRecord::Migration
def change
rename_table :users, :vendors
rename_table :places, :venues
#There could be loads of similar lines
end
end
我需要创建具有以下结构的哈希:
{ "users" => "vendors",
"places" => "venues" }
我怎样才能做到这一点?
我已经可以使用方法 scan /rename_table.:(\S+),\s:(\S+)/ 的正则表达式获取所需的单词,但它返回了
[["users", "vendors"], ["places", "venues"]]
【问题讨论】:
-
{ "users" => "vendors", "places" => "venues" }是一个文字,所以你想用那个结构创建一个哈希是没有意义的。这就像说你想创建一个结构为"cat"的字符串。 -
@CarySwoveland 好的。也许我试图使用错误的方法来解决我的问题。
-
@CarySwoveland 好吧,我会试着解释一下。我需要从文本文件中获取一对特定的值。例如,
"users", "vendors"。之后,我必须转到另一个目录并将名称为users.rb的文件替换为vendors.rb。我认为使用哈希是合适的。 -
我想帮忙,但我不了解 Rails。顺便说一句,你应该添加一个 Rails 标记。
标签: ruby-on-rails ruby regex hash