我正在寻找一种方法来将变量用作表名。
实际上它看起来像这样:
@user = User.new
但是,我可以这样做吗
wrktablename = "User"
@my_table = wrktablename.new
请注意, wrktablename 实际上可以是表名的不同值。
另外还要提一下:我没有变量之外的模型名称或表名。
但我需要使用wrktablename.new
和wrktablename.find
等所有功能。
答案 0 :(得分:5)
要根据变量中的类名实例化对象,可以使用Object.const_get(wrktablename).new
答案 1 :(得分:2)
如果您使用Ruby on Rails,您可以这样做:
"class name".constantize.new