我想创建一个通用方法来更新模型的某些参数。
示例:
@parameter = "name"
User.update(@parameter: "new name here")
因此,在这里我想用“此处新名称”值更新“名称”列。但是这种方法不起作用。关于我应该怎么做的任何想法?
答案 0 :(得分:1)
仅当键是源代码中的文字时,才可以使用{ x: foo }
哈希语法(如该示例中的:x
)。如果要使用变量的值作为哈希的键,则必须使用旧式的hashrocket语法,如下所示:
User.update(@parameter => "new name here")
(严格来说,这不是唯一的方法,有关更多信息,请参见以下答案:Creating a hash key from a variable in Ruby?)