是否有办法为会话设置密钥名称?
@dynamic_value = 'dynamic_123'
session[@dynamic_value] = 1
当然这不起作用,但是我能以某种方式设置会话密钥吗?
我相信这里有答案:如何动态设置会话变量的名称?
我认为session
是一个普通的哈希(具有冷漠访问),其键可以是任何字符串或符号。你发布的代码应该正确存储session['dynamic_123'] = 1
在这里使用实例值,然后在散列中填充所有想要的
dynamic_value = @target.id
session["target_#{dynamic_value}"] = @target.id
或简洁:
session["target_#{@target.id}"] = @target.id
需要双引号