如何通过方法我可以更改属性名称?

时间:2015-06-18 13:17:22

标签: ruby

我有一个定义如下的方法:

def foobar(arg)
  FactoryGirl.create(:user, arg: nil)
end

当我拨打foobar('email')foobar('name')时,我希望我的方法可以返回此信息 分别为FactoryGirl.create(:user, email: nil)FactoryGirl.create(:user, name: nil)

我该怎么做?

抱歉我的英文不好

2 个答案:

答案 0 :(得分:2)

这应该有效:

def foobar(parameter)
  FactoryGirl.create(:user, parameter.to_sym => nil)
end

答案 1 :(得分:1)

您也可以使用插值

def foobar(arg)
  FactoryGirl.create(:user, :"#{arg}" => nil)
end